數據類型之數據庫

一、數據庫對象
數據庫對象包含表。查询、表单、报表、网页、宏和模块等
1) 表
由一列或多列和一行或多行的数据组成。在Microsoft Access中列通常称为字段,表示数据中的一个属性;行称为记录。
2) 查詢
是一组SQL语句,对表中的数据进行检索和更新。查询对像是SQL Server中视图和存储过程的组合。
二、SQL 語法

   SELECT select-list
        FROM table-name
        [WHERE search-condition]
        [ORDER BY order-by-expression [ASC|DESC]]

三、 數據綁定
Add方法的語法:

   object.DataBindings.Add(propertyname,datasource,datamember)

1、 object 表示窗體上的有效控件。
2、 propertyname表示被綁定控件屬性
3、 datasource 表示被綁定的數據源,可以使任何包含數據的有效對象,如DataSet、DataView等
4、 datamember 表示被綁定給控件的數據源的數據字段

四、ADO.NET數據命名空間中的類

1、SqlConnection 提供了與SQL Server 數據庫的連接
1.1) 定義并初始化連接

    <!-- lang: vb -->
               Dim  objConnection as SqlConnection 
               objConnection = New SqlConnection(“Server=loclhost;Database= pubs;”& “User 

1.2)打開與關閉連接

<!-- lang: vb -->
    objConnection.Open()
      ••••
    objConnection.Close()   

2、 SqlCommand

    表示執行數據存儲的一個SQL命令,通常為:選取、插入、更新、或者刪除命令;也可以表示為SQL字符串或春初過程。

2.1)Connection 屬性
用于在執行命令式打開連接

<!-- lang: vb -->
       objCommand.Connection= objConnection 

2.2)CommandText屬性
指定要執行的SQL語句或存儲過程。將所有字符串的值放在單引號中

<!-- lang: vb -->
        objCommand.CommandText= “ INSERT INTO authors ” & “VALUES(‘123-45-6789’,’Barnes’,’David’,1) ”   

上列說明INSERT語句在SQL中的基本工作方式:
行插入到authors中,在au_id列中放入123-45-6789,在au_lname和au_fname中放入名字,在contract列中放入1
2.3)Parameters集合
給命令添加參數的方法:

<!-- lang: vb -->
    objCommand.CommandText= “ INSERT INTO authors ” & “(au_id,au_lname,au_fname,contract)” & _“VALUES(@au_id,@au_lname,@au_fname,@au_contract)”
    objCommand.Parameters.AddWithValue(“@au_id”,txtAuId.Text)
    objCommand.Parameters.AddWithValue(“@au_lname”,txtLastName.Text)
    objCommand.Parameters.AddWithValue(“@au_fname”,txtFirstName.Text)
    objCommand.Parameters.AddWithValue(“@au_contract”,chkContract.Checked)  

2.4)ExecuteNonQuery方法

<!-- lang: vb -->

<!-- lang: vb -->
  objConnection.Open()
  objCommand.ExectuteNonQuery()
  objConnection.Close()

3、SqlDataAdapter
3.1)SelectCommand屬性
用於把sql Server數據庫中的數據填充到DataSet中,其屬性如下:
1)、Connection: 設置用來數據存儲的SqlConnection 對象。
2)、 CommandText :設置用來選取數據的SQL語句或存儲過程名稱。
3.2)把SelectCommand設置為SQL字符串

<!-- lang: vb -->
   Dim objDataAdapter as new SqlDataAdpter()
   objDataAdapter.SelectCommand= new sqlcommand()
   objDataAdapter.SelectCommand.Connection= objconnection
   objDataAdapter.SelectCommand.CommandText= “SELECT au_lname,au_fname FORM authors” & _“ORDER BY au_lname,au_fname”

3.3) 把SelectCommand 設置為存儲過程

<!-- lang: vb -->
    Dim objDataAdapter as new SqlDataAdpter()
    objDataAdapter.SelectCommand= new sqlcommand()
    objDataAdapter.SelectCommand.Connection= objconnection
    objDataAdapter.SelectCommand.CommandText= “usp_select_authors_titles”
     objDataAdapter.SelectCommand.CommandType= commandtype.StoredProcedure 

3.4)Fill方法

<!-- lang: vb -->
    SqlDataAdapter.Fill(DataSet,String)  

DataSet參數指定要用數據填充的有效DataSet對象,string參數指定DataSet中包含的表的名稱,,可以指定多個表

4、DataView
1、概念
一般用於從DataSet中排序、過濾、查找、編輯和導航數據。下面一行代碼使用objDataSet的DataSet對象中的authors表對DataView初始化。

<!-- lang: vb -->
      Dim objDataView = New DataView(objDataSet.Tables(“authors”))  

2、屬性
2.1)Sort 屬性
DataView中的數據排序,默認的順序為升序即:

<!-- lang: vb -->
    objDataView.Sort = “au_fname,au_lname”

降序為:

<!-- lang: vb -->
      objDataView.Sort = “au_fname,au_lname  DESC” 

2.2)RowFilter 屬性

在初始化DataView時,可以過濾它所包含的數據行:只有滿足條件的行會留在視圖中,但底層的數據部會受影響。 該屬性指定了應用於DataView的條件,該條件至少包含一個列名、一個運算符和值,如果值是一個字符串,必須包括在單引號中  

用法1:

<!-- lang: vb -->
       objDataView =  New DataView(objDataSet.Tables(“authors”))
       objDataView.RowFilter = “au_lanme=’ Green’ ”

用法2:

<!-- lang: vb -->
       objDataView.RowFilter = “au_lanme<>’ Green’ 

用法3:

<!-- lang: vb -->
       objDataView.RowFilter = “au_lanme=’ Green’ AND au_fname LIKE ‘D*’ ”

3.Find 方法

1.在DataView中搜索指定的數據行, 在調用Find方法之前,首先對DataView所包含的數據排序
以查找名字為Ann的作者為例:

<!-- lang: vb -->
   Dim intPosition As Integer
   objDataView.Sort= “au_fname”
   intPosition = objDataView.Find(“Ann”)
  1. 當DataView儲存多個列時,假如排序,就要飛Find方法提供一個組值。
    以查找Simon Watts為例

     Dim intPosition  as Integer
     Dim arrValues(1) as object
     ObjDataView.Sort=”au_fname,au_lname”
      arrValues(0)= “ Simon”
      arrValues(1)= “ Watts”
      intPosition = objDataView.Find(arrValues)
    

你可能感兴趣的:(數據類型之數據庫)