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

C#數(shù)據(jù)庫開發(fā)相關技巧匯總

開發(fā) 后端
C#數(shù)據(jù)庫開發(fā)相關技巧匯總,包括用SqlConnection連接SQL Server、用OleDbConnection連接、創(chuàng)建Command對象等等內(nèi)容。

C#數(shù)據(jù)庫開發(fā)一.用SqlConnection連接SQLServer

1.加入命名空間

  1. usingSystem.Data.SqlClient; 

2.連接數(shù)據(jù)庫

  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#數(shù)據(jù)庫開發(fā)二。用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#數(shù)據(jù)庫開發(fā)三.創(chuàng)建Command對象

1.SqlCommand構造函數(shù)

①初始化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的關聯(lián)。

myCommand.Connection=myConnection;

或者:SqlCommandmyCommand=myConnection.CreateCommand;

3.設置SqlCommand的查詢文本。

myCommand.CommandText="SELECT*FROMmindata";

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

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

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

4.執(zhí)行命令。

ExecuteReader
返回一行或多行

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

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

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

  1. SqlDataReadermyReader=myCommand.ExecuteReader();  
  2. 或SqlDataReadermyReader=myCommand.ExecuteReader(CommandBehavior.CloseConnection);  
  3.  
  4. while(myReader.Read())//循環(huán)讀取數(shù)據(jù)  
  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#數(shù)據(jù)庫開發(fā)四.DataReader的使用

1.遍歷結果集

while(myReader.Read())

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

myReader.Close();

2.使用序數(shù)索引器。

  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位有符號整數(shù)形式的[C#]

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

5.得到列信息。

myReader.FieldCount獲取當前行中的列數(shù)

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

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

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

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

6.得到數(shù)據(jù)表的信息。

myReader.GetSchemaTable()返回一個DataTable

7.操作多個結果集。

  1. myReader.NextResult()使數(shù)據(jù)讀取器前進到下一個結果集  
  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#數(shù)據(jù)庫開發(fā)五.DataAdapter

1.創(chuàng)建SqlDataAdapter

初始化SqlDataAdapter類的新實例。

publicSqlDataAdapter();

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

publicSqlDataAdapter(SqlCommand);

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

publicSqlDataAdapter(string,SqlConnection);

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

publicSqlDataAdapter(string,string);

2.DataAdapter和SqlConnection,SqlCommand建立關聯(lián)。

1.DataAdapter在構造參數(shù)時建立

2.SqlDataAdapteradapter=newSqlDataAdapter();

adapter.SelectCommand=newSqlCommand(query,conn);

3.DataAdapter.Fill()方法。

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

publicoverrideintFill(DataSet);

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

publicintFill(DataSet,string);

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

publicintFill(DataSet,int,int,string);

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

publicintFill(DataTable);

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

protectedvirtualintFill(DataTable,IDataReader);

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

protectedvirtualintFill(DataTable,IDbCommand,CommandBehavior);

C#數(shù)據(jù)庫開發(fā)六.DataTable類

七.DataColumn類

八.DataRow類

九.DataSet類
1.創(chuàng)建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,);

進行動態(tài)的篩選和排序。

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

①獲取所有DataRow對象的數(shù)組。

publicDataRow[]Select();

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

publicDataRow[]Select(string);

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

publicDataRow[]Select(string,string);

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

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

十一。DataView類:是DataTable內(nèi)容的動態(tài)視圖。

1.創(chuàng)建對象

初始化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的行數(shù)據(jù)。

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

【編輯推薦】

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

2011-04-12 09:43:17

Sybase數(shù)據(jù)庫修復技巧

2009-08-07 15:38:15

精通C#數(shù)據(jù)庫編程

2024-02-28 08:06:17

2009-08-27 16:54:59

C#開發(fā)技巧

2009-08-12 14:13:51

C#讀寫Excel文件

2010-03-18 09:28:14

Oracle數(shù)據(jù)庫遷移

2009-08-25 15:35:20

C#連接Oracle數(shù)

2024-04-18 09:56:16

2009-08-11 13:35:13

C# Berkeley

2009-03-19 10:08:09

C#數(shù)據(jù)庫查詢

2010-10-26 15:21:11

連接Oracle數(shù)據(jù)庫

2009-08-24 18:09:13

C#調(diào)用Oracle數(shù)

2009-09-04 17:23:21

C#數(shù)據(jù)庫連接對象

2009-08-06 18:10:06

C#數(shù)據(jù)庫事務

2009-08-25 14:05:06

C#連接數(shù)據(jù)庫代碼

2009-08-07 16:19:00

C#下數(shù)據(jù)庫編程

2009-07-31 17:01:21

C#存取Access數(shù)

2009-08-17 17:42:57

C#數(shù)據(jù)庫操作類

2009-08-07 16:19:00

C#下數(shù)據(jù)庫編程

2009-08-25 12:50:32

數(shù)據(jù)庫常用C#代碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人免费在线观看视频 | 伊人网一区 | 国产精品jizz在线观看老狼 | 欧美精品一二三 | 久久里面有精品 | 国产区在线观看 | 中文字幕一区二区三区四区不卡 | 欧洲国产精品视频 | 一级免费毛片 | 日韩高清一区二区 | 欧美一级片 | 久久精品国产免费 | 在线视频国产一区 | 91国内精品久久 | www.男人天堂.com | 99资源站 | 日韩一区精品 | 狠狠综合久久av一区二区小说 | 91精品国产综合久久婷婷香蕉 | 国产精品欧美一区二区三区不卡 | 久久精品亚洲一区二区三区浴池 | 毛片免费在线 | 国产一区二区三区在线看 | 日韩国产精品一区二区三区 | 99九九久久 | 99久久影院 | 国产视频中文字幕 | 国产欧美二区 | 男插女下体视频 | 成人综合视频在线 | 日本小视频网站 | 99在线免费观看视频 | 久久精品青青大伊人av | 久久精品免费一区二区 | m豆传媒在线链接观看 | 欧美一级在线观看 | 国产精品亚洲一区二区三区在线观看 | 欧美中文字幕在线观看 | 免费xxxx大片国产在线 | 免费三级av | 欧美一区二区小视频 |