http://www.javashuo.com/article/p-ovenmkjk-b.htmlmysql
c#利用ado.net進行數據庫開發的基本步驟:web
1。建立和數據庫鏈接的connection 對象。
2。配置DataAdapter對象並建立和操做數據集DataSet。
3。將數據庫中的表添加到DataSet中。
4。把數據集DataSet幫定到DataGrid上。利用DataAdapter 的Fill方法把數據填充到DataSet,最終的數據庫中的數據顯示在用戶界面的DataGrid中。sql
c#中從數據庫查詢記錄的方法, 通常使用兩種方法:數據庫
一種是經過DataReader對象直接訪問; c#
使用ADO.NET的Datareader對象能從數據庫中檢索數據。檢索出來的數據造成一個只讀只進的數據流,存儲在客戶端的網絡緩衝區內。Datareader對象的read方法能夠前進到一下條記錄。在默認狀況下,每執行一次read方法只會在內存中存儲一條記錄系統的開銷很是少。緩存
建立datareader以前必須先建立sqlcommand對象,而後調用該對象的executereader方法來構造sqldatareader對象,而不是直接使用構造函數。網絡
下面的示例程序完成的功能是訪問sqlserver數據庫,並使用datareader從northwind數據中讀取記錄,並將查詢結果經過控制檯輸出。ide
using System;函數
using System.Data;sqlserver
using System.Data.SqlClient;
namespace ReadDataFromDB{
class Class1{
static void Main(string[] args){
string myconn="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind";
//須要執行的SQL語句
string mysql="select OrderID,CustomerID from Orders where CustomerID='CHOPS'";
//打開數據庫鏈接。
SqlConnection myconnection=new SqlConnection(myconn);
myconnection.Open();
//建立SqlCommand 對象
SqlCommand mycommand=new(mysql,myconnection);
//經過SqlCommand的ExecuteReader()方法構造DataReader 對象。
SqlDataReader myreader=mycommand.ExecuteReader();
while(myreader.read()){
Console.WriteLine(myreader.GetInt32(0)+","+myreader.GetString(1));
}
myreader.Close();
myconnection.Close();
}
}
}
--------------------------------------------------------------------------
另外一種則是經過數據集Dataset和Dataadapter對象訪問.
從數據庫中讀取紀錄的另外一種方法是使用Dataset對象和Dataadapter對象.Dataset是ADO.NET的主要組件之一,
它用於緩存從數據源檢索到的數據信息。Dataadapter做爲Dataset和數據源之間的橋接器,用於檢索和保存數據。
Dataadapter從數據庫中獲取數據後使用Fill方法把數據填充到Dataset中。下面以Sqldataadapter爲例說明如何使用Dataset對象和Dataadapter對象從數據庫中讀取記錄。執行查詢的關鍵步驟以下:
1、建立與數據庫創建鏈接的Sqlconnection,傳遞鏈接字符串。
2、構造包含查詢語句的Sqldataadapter對象;
3、若要使用查詢結果填充Dataset對象,則調用命令Fill方法。
示例:
using System;
using System.Data;
using System.SqlClient;
namespace ReadDataFromDB2{
class Class2{
static void Main(string[] args){
string myconn="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind";
//Initialize sql statement.
string mysql="select CompanyName,ContactName from Customers";
//Initialize connection string.
SqlConnection myconnection=new SqlConnection(myconn);
//Execute sql.
SqlDataAdapter mydataadapter=new SqlCommand(mysql,myconnection);
myconnection.Open();
DataSet ds=new DataSet();
mydataadapter.Fill(ds,"Customers");
for(int i=0;i<ds.Tables["Customers"].Rows.Count;i++){
Console.WriteLine(ds.Tables["Customers"].Row[i][0].ToString()+","+ds.Table["customers"].Row[i][1].ToString());
----------------------------------------------------------------------------------
取出DataGrid中某一行中的值
DataGrid.Item(i).cells[j].text;
DataGridView1.DataSource = dataset.Tables["company"].Defaultvies;與下面兩句等效DataGridView1.DataSource = dataset;DataGridView1.Datamumber = "company";