大家這幾天在做學生信息管理系統的時候,出現
最多的應該就是這個問題了,“實時錯誤‘91’:對象變量或with塊變量未設置”。如右圖:
遇到這個問題,我們首先應該去參考MSDN,不過這時候MSDN似乎沒有幫到我們很多,總結了一下,其實出現這個錯誤的情況有很多種:
1、在運行程序之前沒有配置ODBC數據源或者ODBC數據源配置錯誤,當然前提得是SQL Server執行了相關的SQL代碼(學生系統中用到的student.mdb文件)。
2、代碼問題,大多數情況是查詢語句有問題,比如:
(1)、SQL 語句之間少了空格:txtSQL = "select * fromstudent_Info"
(2)、在執行查詢學生學籍信息的窗體中,執行語句txtSQL = "select * from result_Info where",因為後面還要添加條件,所以在‘where’和‘ " ’之間缺少空格時會出錯。
(3)、在一句完全的查詢語句中,比如 txtSQL = "select * from class_Info where class_No='" & Trim(txtClassno.Text) & "'",其中在最後判斷輸入框中的條件時,雙引號和單引號一定要注意(整句話的引號從外到內一共分三層:雙引號,單引號,雙引號),既不可破壞其順序層次,也不能丟三落四。
3、邏輯錯誤:缺少語句,在給執行語句txtSQL正確賦值之後,直接操作數據庫中的數據,說通俗點就是還沒連上數據庫就對其進行操作,這也是我犯過的錯誤。在賦值之後直接執行對數據庫的增刪改查,完全把調用判斷和連接數據庫的函數executeSQl拋在腦後。
4、還有就是MSDN中提示的情況,比如試圖使用的對象變量已被設為Nothing等等,這裡不再多說,詳情請參考MSDN for VB6.0