成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C#數據庫開發相關技巧匯總

開發 后端
C#數據庫開發相關技巧匯總,包括用SqlConnection連接SQL Server、用OleDbConnection連接、創建Command對象等等內容。

C#數據庫開發一.用SqlConnection連接SQLServer

1.加入命名空間

  1. usingSystem.Data.SqlClient; 

2.連接數據庫

  1. SqlConnectionmyConnection=newSqlConnection();  
  2. myConnection.ConnectionString="userid=sa;password=sinofindb;initialcatalog=test;datasource=127.0.0.1;ConnectTimeout=30";  
  3. myConnection.Open(); 

改進(更通用)的方法:

  1. stringMySqlConnection="userid=sa;password=sinofindb;Database=test;datasource=127.0.0.1;ConnectTimeout=30";  
  2. SqlConnectionmyConnection=newSqlConnection(MySqlConnection);  
  3. myConnection.Open(); 

C#數據庫開發二。用OleDbConnection連接

1.加入命名空間

usingSystem.Data.OleDb;

2.連接sqlserver

  1. stringMySqlConnection="Provider=SQLOLEDB;DataSource=localhost;InitialCatalog=test;IntegratedSecurity=SSPI;";  
  2. SqlConnectionmyConnection=newSqlConnection(MySqlConnection);  
  3. myConnection.Open(); 

3.連接Access(可通過建立.udl文件獲得字符串)

stringMySqlConnection="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=c:\db2000.mdb;

PersistSecurityInfo=False;

4.連接Oracle(也可通過OracleConnection連接)

stringMySqlConnection="Provider=MSDAORA;DataSource=db;userid=sa;password=sinofindb";

C#數據庫開發三.創建Command對象

1.SqlCommand構造函數

①初始化SqlCommand類的新實例。publicSqlCommand();

SqlCommandmyCommand=newSqlCommand();

②初始化具有查詢文本的SqlCommand類的新實例。publicSqlCommand(string);

  1. StringmySelectQuery="SELECT*FROMmindata";  
  2. SqlCommandmyCommand=newSqlCommand(mySelectQuery); 

③初始化具有查詢文本和SqlConnection的SqlCommand類實例。

  1. PublicSqlCommand(string,SqlConnection);  StringmySelectQuery="SELECT*FROMmindata";  stringmyConnectString="userid=sa;password=;database=test;server=mySQLServer";  SqlConnectionmyConnection=newSqlConnection(myConnectString);  SqlCommandmyCommand=newSqlCommand(mySelectQuery,myConnection);  

 

④初始化具有查詢文本、SqlConnection和Transaction的SqlCommand類實例。

  1. publicSqlCommand(string,SqlConnection,SqlTransaction);  
  2. SqlTransactionmyTrans=myConnection.BeginTransaction();  
  3. StringmySelectQuery="SELECT*FROMmindata";  
  4. stringmyConnectString="userid=sa;password=;database=test;server=mySQLServer";  
  5. SqlConnectionmyConnection=newSqlConnection(myConnectString);  
  6. SqlCommandmyCommand=newSqlCommand(mySelectQuery,myConnection,myTrans); 

2.建立SqlCommand與SqlConnection的關聯。

myCommand.Connection=myConnection;

或者:SqlCommandmyCommand=myConnection.CreateCommand;

3.設置SqlCommand的查詢文本。

myCommand.CommandText="SELECT*FROMmindata";

或者第2種構造:SqlCommandmyCommand=newSqlCommand(mySelectQuery);

給SqlCommand對象提供兩個查詢字符串,每個查詢字符串訪問不同的表,返回不同的結果集。

兩個查詢語句用分號分隔。

4.執行命令。

ExecuteReader
返回一行或多行

ExecuteNonQuery
對Connection執行Transact-SQL語句并返回受影響的行數(int)

ExecuteScalar
返回單個值(如一個聚合值).返回結果集中第一行的第一列。忽略額外的列或行

ExecuteXmlReader
將CommandText發送到Connection并生成一個XmlReader對象。

  1. SqlDataReadermyReader=myCommand.ExecuteReader();  
  2. 或SqlDataReadermyReader=myCommand.ExecuteReader(CommandBehavior.CloseConnection);  
  3.  
  4. while(myReader.Read())//循環讀取數據  
  5. {  
  6. Console.WriteLine(myReader.GetString(0));//獲取指定列的字符串形式的值  
  7. Console.WriteLine(myReader.Getvalue(1));//獲取以本機格式表示的指定列的值  
  8. }  
  9. CommandText="selectcount(*)asNumberOfRegionsfromregion";  
  10. Intcount=(int)myCommand.ExecuteScalar(); 

關于OleDbCommand對象的使用。

C#數據庫開發四.DataReader的使用

1.遍歷結果集

while(myReader.Read())

Console.WriteLine("\t{0}\t{1}",myReader.GetInt32(0),myReader.GetString(1));

myReader.Close();

2.使用序數索引器。

  1. while(myReader.Read())  
  2. Console.WriteLine("\t{0}\t{1}",myReader[0].ToString(),myReader[1].ToString());  
  3. myReader.Close(); 

3.使用列名索引器。

  1. while(myReader.Read())  
  2. Console.WriteLine("\t{0}\t{1}",myReader["code].ToString(),myReader["name"].ToString());  
  3. myReader.Close(); 

4.使用類型訪問器。

publiccharGetChar(inti);獲取指定列的單個字符串形式的值

publicDateTimeGetDateTime(inti);獲取指定列的DateTime對象形式的值

publicshortGetInt16(inti);獲取指定列的16位有符號整數形式的[C#]

publicstringGetString(inti);獲取指定列的字符串形式的值

5.得到列信息。

myReader.FieldCount獲取當前行中的列數

myReader.GetFieldType(序號)獲取是對象的數據類型的Type

myReader.GetDataTypeName(序號)獲取源數據類型的名稱

myReader.GetName(序號)獲取指定列的名稱

myReader.GetOrdinal(序號)在給定列名稱的情況下獲取列序號

6.得到數據表的信息。

myReader.GetSchemaTable()返回一個DataTable

7.操作多個結果集。

  1. myReader.NextResult()使數據讀取器前進到下一個結果集  
  2. do  
  3. {  
  4. while(myReader.Read())  
  5. Console.WriteLine("\t{0}\t{1}",myReader.GetInt32(0),myReader.GetString(1));  
  6. }  
  7. while(myReader.NextResult()); 

C#數據庫開發五.DataAdapter

1.創建SqlDataAdapter

初始化SqlDataAdapter類的新實例。

publicSqlDataAdapter();

將指定的SqlCommand作為SelectCommand屬性,初始化SqlDataAdapter類的新實例。

publicSqlDataAdapter(SqlCommand);

用selectcommand字符串和SqlConnection對象初始化SqlDataAdapter類的新實例。

publicSqlDataAdapter(string,SqlConnection);

用selectcommand字符串和一個連接字符串初始化SqlDataAdapter類的新實例。

publicSqlDataAdapter(string,string);

2.DataAdapter和SqlConnection,SqlCommand建立關聯。

1.DataAdapter在構造參數時建立

2.SqlDataAdapteradapter=newSqlDataAdapter();

adapter.SelectCommand=newSqlCommand(query,conn);

3.DataAdapter.Fill()方法。

在DataSet中添加或刷新行以匹配使用DataSet名稱的數據源中的行,并創建一個名為“Table”的DataTable。

publicoverrideintFill(DataSet);

在DataSet中添加或刷新行以匹配使用DataSet和DataTable名稱的數據源中的行。

publicintFill(DataSet,string);

在DataSet的指定范圍中添加或刷新行以匹配使用DataSet和DataTable名稱的數據源中的行。

publicintFill(DataSet,int,int,string);

在DataTable中添加或刷新行以匹配使用DataTable名稱的數據源中的行。

publicintFill(DataTable);

在DataTable中添加或刷新行以匹配使用指定DataTable和IDataReader名稱的數據源中的行。

protectedvirtualintFill(DataTable,IDataReader);

在DataTable中添加或刷新行以匹配使用DataTable名稱、指定的SQLSELECT語句和CommandBehavior的數據源中的行。

protectedvirtualintFill(DataTable,IDbCommand,CommandBehavior);

C#數據庫開發六.DataTable類

七.DataColumn類

八.DataRow類

九.DataSet類
1.創建DataSet對象

初始化DataSet類的新實例。

publicDataSet();

用給定名稱初始化DataSet類的新實例。

publicDataSet(string);

2.用DataAdapter填充DataSet

DataSetmyds=newDataSet();

adapter.fill(myds)

adapter.fill(myds,”表名”);用一個表去填充DataSet.

十.DataTableCollection類。表示DataSet的表的集合。

DataTableCollectiondtc=ds.Tables;

DataTabletable=dtc[“表名”];

StringstrExpr="id>5";

StringstrSort="nameDESC";

DataRow[]foundRows=customerTable.Select(strExpr,strSort,);

進行動態的篩選和排序。

DataTable.Select()方法:獲取DataRow對象的數組,

①獲取所有DataRow對象的數組。

publicDataRow[]Select();

②按主鍵順序(如沒有主鍵,則按照添加順序),獲取與篩選條件相匹配的所有DataRow對象的數組。

publicDataRow[]Select(string);

③獲取按照指定的排序順序且與篩選條件相匹配的所有DataRow對象的數組。

publicDataRow[]Select(string,string);

④獲取與排序順序中的篩選器以及指定的狀態相匹配的所有DataRow對象的數組。

publicDataRow[]Select(string,string,DataViewRowState);

十一。DataView類:是DataTable內容的動態視圖。

1.創建對象

初始化DataView類的新實例。

publicDataView();

用指定的DataTable初始化DataView類的新實例。

publicDataView(DataTable);

用指定的DataTable、RowFilter、Sort和DataViewRowState初始化DataView類的新實例。

  1. publicDataView(DataTable,string,string,DataViewRowState);  
  2. DataViewmyview=newDataView(ds.Tables["Suppliers"],  
  3. "id>5",  
  4. "nameDESC",  
  5. DataViewRowState.CurrentRows); 

2.得到DataView的行數據。

  1. foreach(DataRowViewmyrowviewinmyview)  
  2. {  
  3. for(inti=0;i   
  4. Console.Write(myrowview+"\t");  
  5. Console.WriteLine();  

【編輯推薦】

  1. 淺析C#正則表達式
  2. 實現DB2功能的C#數據庫編程實例
  3. C#語言操縱數據庫事務
  4. 概述C#語言異常處理
  5. 簡單介紹C#數組和函數
責任編輯:彭凡 來源: cnblogs
相關推薦

2011-04-12 09:43:17

Sybase數據庫修復技巧

2009-08-07 15:38:15

精通C#數據庫編程

2024-02-28 08:06:17

2009-08-27 16:54:59

C#開發技巧

2009-08-12 14:13:51

C#讀寫Excel文件

2010-03-18 09:28:14

Oracle數據庫遷移

2009-08-25 15:35:20

C#連接Oracle數

2009-08-11 13:35:13

C# Berkeley

2024-04-18 09:56:16

2009-03-19 10:08:09

C#數據庫查詢

2010-10-26 15:21:11

連接Oracle數據庫

2009-08-25 12:50:32

數據庫常用C#代碼

2009-08-07 16:19:00

C#下數據庫編程

2009-08-12 14:27:36

訪問MySQL數據庫C# ODBC

2009-08-24 18:09:13

C#調用Oracle數

2009-09-04 17:23:21

C#數據庫連接對象

2009-08-07 16:19:00

C#下數據庫編程

2009-08-06 18:10:06

C#數據庫事務

2009-08-25 14:05:06

C#連接數據庫代碼

2009-07-31 17:01:21

C#存取Access數
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 色女人天堂 | 狠狠涩 | 欧美又大粗又爽又黄大片视频 | 精品国产欧美 | 亚洲欧美日韩电影 | 国产色在线| 成人午夜在线观看 | 亚洲美女视频 | 九九综合 | 中文字幕在线观看一区二区 | 精品欧美激情精品一区 | 天堂网色 | 一区二区三区精品视频 | 日韩在线视频一区 | 亚洲精品第一国产综合野 | 爱高潮www亚洲精品 中文字幕免费视频 | 久久久久国产一区二区三区 | 美女一级毛片 | 欧美日韩高清一区 | 欧美精品中文字幕久久二区 | 成人一区在线观看 | 91精产国品一二三区 | 一区二区三区四区在线播放 | 欧美三级成人理伦 | 精品国产乱码久久久久久影片 | 日韩欧美在线一区二区 | 日韩欧美国产一区二区 | 国产欧美在线视频 | www.久久国产精品 | 久久精品美女 | 国产精品久久久久久久久久 | 九九热精品视频 | 国产精品久久久久久久久 | 日韩在线免费 | 国产一区二区精品在线观看 | 精品欧美一区二区三区 | 久草热播 | 日韩精品一 | 一区二区免费在线观看 | 久久青青 | 国产亚洲精品综合一区 |