在ASP中使用SQL語句之5:開始執行

來源:互聯網
上載者:User
語句|執行 在學會了SELECT語句的構造和用途之後你就該學習如何使用它了。在你所掌握的資料庫工具下,這可能意味著你得按下某個寫著“執行”字樣的按鈕。在ASP網頁上,可以立即執行SQL語句也可以當作預存程序調用。

一旦建立了SQL 陳述式,你還得設法訪問其查詢結果。顯然,這裡的關鍵就是ASP recordset。在使用非SQL的recordset時,建立recordset的代碼通常如下所示:
Dim objRec
Set objRec = Server.CreateObject ("ADODB.Recordset")
objRec.Open "customers", objConn, 0, 1, 2

如果你對ASP比較熟悉以上的代碼對你可就不陌生了,你應該知道“customers”表示你開啟資料庫內一個資料表的名字。

開啟recordset
為了充分利用你更為熟悉的SQL技能,你需要調整常規ASP網頁上最常採用的recordset:
Dim objRec
Set objRec = Server.CreateObject ("ADODB.Recordset")
objRec.Open SQL, objConn, 0, 1, 2

這裡唯一的修改就是在objRec.Open,之後用包含SQL語句的變數代替了要查詢的資料表的名稱。

這種方法的優點之一是你可以指定遊標類型(如以上0, 1 ,2 所示)。

執行SQL
你可以用緊湊的一行代碼執行SQL語句來建立recordset。以下是文法:
Dim objRec
set objRec = objConn.Execute(SQL)

在上例中,你所看到的SQL是你存放自己SQL SELECT 語句的變數。該程式碼“運行”SQL語句(或者說對資料庫進行查詢),選取資料並把資料存放在recordset 內,在上例中就是變數objRec。這種方法的主要缺點是你不能選擇自己想採用的遊標類型。相反,recordset總是用前向遊標開啟。

因為遊標的緣故,你或許打算熟悉兩種建立recordset的方法。直接執行查詢節省了鍵入字元所消耗的時間,但那樣的話你就得採用預設的遊標了,這樣有可能遭遇經常不能正常啟動並執行毛病。不管你具體採用哪種辦法,兩者之間的最大的差別也不外乎代碼精練與否。在不考慮你取得什麼欄位、你的標準是什麼的前提下,也不管你如何儲存資料,採用SQL式的recordset 在體積上會比ASP上開啟的標準recordset 要小得多,更別提操作起來的簡易性了。畢竟,通過過濾資料,你消除了耗費時間的if-then 測試和可能用到的迴圈。

編寫測試用SQL
這裡有個技巧,許多專業ASP程式員習慣在測試網頁的時候“編寫”自己的SQL語句。這樣做可以協助你調試代碼,因為你可以從中看到傳遞給伺服器執行的字串。而你要做的無非是增加Response.WriteyourVariable 在螢幕上顯示有關資訊。在你把和SQL有關的問題提交給ASP討論群組的時候你就應該附上這些資訊。



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.