| 屬性 | 說明 |
| commandtext | 其返回類型為string, 獲取或設置要對數據源執行的 sql 語句、存儲過程或表。 |
| commandtimeout | 其返回類型為int,獲取或設置在終止執行命令的嘗試并生成錯誤之前的等待時間。 |
| commandtype | 其返回類型為commandtype,讀取或設置表示commandtext屬性將如何被解釋的值,其有效的值可以為commandtype.text、commandtype.storedprocedur與commandtype.tabledirect,分別表示sql語句、存儲過程調用或要讀取的表,默認為text。 |
| connection | 其返回類型為string, 獲取或設置 sqlcommand 的此實例使用的 sqlconnection。 |
| parameters | 其返回類型為sqlparametercollection,取得提供給命令的參數(如有)。 |
| 方法 | 說明 |
| cancle() | 其返回類型為void,取消命令的執行 |
| createparameter() | 其返回類型為sqlparameter, 用于創建 sqlparameter 對象的新實例。 |
| executenonquery() | 其返回類型為int,執行不返回結果集的sql語句,包括insert、update與delete語句、ddl語句和不返回結果集的存儲過程調用。返回的int值是命令影響的數據庫行數。 |
| executereader() | 其返回類型為sqldatareader, 執行select語句、tabledirect命令或返回結果集的存儲過程調用。在sqldatareader對象中返回結果集。 |
| executescalar() | 其返回類型為object,執行返回單個值的select語句(任何其他的值將被忽略)。這個命令結果作為對象被返回。 |
| executexmlreader() | 其返回類型為xmlreader,執行返回xml數據的select語句,用xmlreader對象返回結果集,只適用于sqlcommand類 |
生成sqlcommand對象
我們可以用構造函數生成sqlcommand對象,也可以調用sqlconnection對象的createcommand()方法生成sqlcommand對象,下面分別介紹這兩種方法。
用構造函數生成sqlcommand對象
sqlcommand對象的構造函數如下所示:
| sqlcommand() sqlcommand(string commandtext) sqlcommand(string commandtext,sqlconnection mysqlconnection) |
| mysqlconnection.connectionstring="server=localhost;database=northwind; integrated security=sspi"; |
| sqlcommand mysqlcommand=new sqlcommand(); |
| mysqlcommand.connection= mysqlconnection; |
| 數值 | 說明 |
| text | 表示命令是sql語句,默認值是text |
| storedprocedure | 表示命令是儲存過程調用 |
| tabledirect | 表示被讀取的行和列的表名。注意:sqlcommand對象不支持tabledirect,要使用其他的command類的對象。 |
| sqlcommand mysqlcommand=new sqlcommand(); mysqlcommand.connection=mysqlconnection; mysqlcommand.commandtext=”select * from employees”; //mysqlcommand.commandtype=commandtype.text; |
| sqlcommand mysqlcommand=new sqlcommand(”select * from employees”,myconnection); |
| sqlcommand mysqlcommand=new sqlcommand(”getempolyees”,myconnection); mysqlcommand.commandtype=commandtype.storedprocedure; |
| sqlcommand mysqlcommand=mysqlconnection.createcommand(); |
新聞熱點
疑難解答
圖片精選