全面攻略ADO.NET Command對象屬性
經(jīng)過長時間學(xué)習(xí)ADO.NET,于是和大家分享一下,看完本文你肯定有不少收獲,希望本文能教會你更多東西。對于ADO.NET對象這里就不一一介紹了,現(xiàn)在我們只對ADO.NET Command對象屬性全面介紹一下命令對象:可完成對數(shù)據(jù)庫的定義,修改,數(shù)據(jù)的查詢。
◆ActiveConnection屬性:從屬于哪一個connection對象。要用Set賦值,如:Set cmd.ActiveConnection=cn.創(chuàng)建一個command對象時指明該對象從屬于哪一個connection對象。如果事先沒有建立 Connection對象,則將該屬性直接指定一個連接串,ADO將為這個Command對象創(chuàng)建新的隱含的Connection對象,并將該字符串作為 ConnectionString自動建立起連接??梢詾橐粋€connection連接對象創(chuàng)建多個command命令,只需要將每個command命令對象的activeconnection屬性都為該connection對象名,如:
- Dim cmd as ADODB.command
- Set cmd=New ADODB.command
- Set cmd.ActiveConnection=cn (說明:cn是前面舉例的connection對象)
◆CommandText屬性:命令內(nèi)容,為1條SQL選擇或動作查詢,或表名等。如:
- cmd.CommandText="DELETE FROM students WHERE ID=98001"
◆CommandTimeout屬性:等待命令執(zhí)行完的最長時間,超時將中止該命令。
◆CommandType屬性:command對象的類型,可選值有:adCmdText(SQL語句),adCmdTable(表),adCmdStoredProc(存儲過程)缺省為adCmdUnknow未知命令類型。例:
- cmd.CommandText="BB"
- cmd.CommandType=adCmdTable (是一張表)
◆ADO.NET Command對象屬性Prepared:第1次執(zhí)行時是否進行編譯,以提高以后的執(zhí)行速度。表示進行命令的預(yù)編譯,提高以后的執(zhí)行速度。
◆ADO.NET Command對象屬性State:對象的當(dāng)前狀態(tài),可能值有:adStateClosed對象已關(guān)閉;adStateOpen對象已打開;adStateConnecting對象正在連接;adStateExecuting正在執(zhí)行命令;adStateFetching表明 Recordset對象的行正在被取回。State屬性實際是一個通用屬性,因為在連接對象Connection,命令對象Command,記錄集 Recordset中都有這個屬性。reateParameter方法和Parameters集合:創(chuàng)建1個新的Parameter對象,如果CommandText(命令)是帶參數(shù)的SQL Server存儲過程,可用此方法創(chuàng)建參數(shù)對象,格式:
- Set parameter對象= command對象.CreateParameter(對象名name,參數(shù)類型type,輸入/輸出參數(shù)direction,參數(shù)長度size,參數(shù)值value)
#T#其中,Type指定對象值的數(shù)據(jù)類型如adInteger,adVariant等;Direction參數(shù)指定參數(shù)類型,可選值有 adParamUnknown未知;adParamInput輸入?yún)?shù);adParamoutput輸出參數(shù);adParamInputOutput輸入 /輸出參數(shù);adParamReturnValue是一個返回值參數(shù)。Size參數(shù)指定對象值的***長度。Value:對象的值。用 CreateParameter方法僅在內(nèi)存中創(chuàng)建參數(shù)對象,并不真正包含進Command對象中,要用命令對象中Parameters集合的 Append方法添加上,才算真正建立。格式:Command對象.Parameters.Append Parameter對象變量。