sqlex
❶ 代碼中提示用戶未處理sqlexception,是什麼意思
正在學習SQL,還沒學到這塊來著。從英文字意看是sqlexception是「排除」的意思。
期待高手出現~~~
❷ java.sql.SQLException到底怎麼解決
補充一下啊,剛剛安裝SqlServer的時候也發現這個問題了,在執行下面步驟的時候少了一條,就是安裝sp3補丁,而且安裝sp3補丁的時候要選擇混合驗證模式 就是要輸入sa密碼的那個。這樣就ok了。方法和sp4補丁一樣,就不贅述了。
程序執行到這出錯:
con=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=student","sa","chenjiang");
由於獲取連接失敗導致後面的結果集為空,關閉結果集時出現空指針異常。
由於不知道你開發的環境配置的是否正確,給幾點建議。
1> sp4補丁是否打好?(我估計多半是這個原因);
解決辦法:
1 下載個SP4補丁包,下載地址:
http://www.microsoft.com/downloads/details.aspx?FamilyID=8e2dfc8d-c20e-4446-99a9-b7f0213f8bc5&DisplayLang=zh-cn
文件名:SQL2000-KB884525-SP4-x86-CHS.EXE
2 將文件「SQL2000-KB884525-SP4-x86-CHS.EXE」安裝後,產生「SQL2KSP4」文件夾,相當於解壓這個補丁文件,雙擊「SQL2KSP4」文件夾里的「setup.bat」文件,才開始真正安裝SP4補丁文件。
注意:要先安裝MSSQL 2000資料庫,再安裝Sp4補丁文件。
2> 驅動包是否加入,是否引入
import com.microsoft.jdbc.sqlserver.SQLServerDriver;
3>con=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=student","sa","chenjiang");
確定登錄資料庫的用戶是sa? 密碼是chengjiang?
❸ 用戶代碼未處理sqlexception
處理辦法:
1、在配置工具->Sqlserver網路配置下MSSqlserver的協議,然後選擇右邊的TCP/IP
2、TCP/IP改為1433;
3、重啟服務;
查看伺服器屬性,看看是這樣的嗎?
❹ System.Data.SqlClient.SqlException: 用戶 '' 登錄失敗
根據異常提示,應該是登陸資料庫時沒有獲取到用戶名,所以提示用戶空登陸失敗。檢查一下sql連接字元串是否正確賦值。
Data
Source
=
myServerAddress;Initial
Catalog
=
myDataBase;User
Id
=
myUsername;Password
=
myPassword;
注意userID項。
❺ 用戶代碼未處理 SqlException
這是因為你的SQL Sever服務的TCP協議沒有打開。
具體的步驟很多:
查看SQL Server 網路配置信息。默認的情況下列表中的Named Pipes和TCP/IP的狀態為Disable,即沒有啟用。右鍵點擊這兩項,在彈出菜單中選中Enable啟用這兩個協議。
在TCP/IP協議上雙擊滑鼠,彈出對話框。修改對話框Protocol屬性頁中的「Listen All 」項設為「no」。IP Address屬性頁中,修改你要資料庫服務監聽的IP地址 的屬性,修改Enabled屬性為Yes,修改TCP Dynamic Ports屬性為空,TCP Port項在默認安裝下為空,現在修改為我們監聽埠1433。
完成以上操作後需要重新啟動資料庫服務才能使修改生效。
可以在命令窗口輸入如下命令「netstat - na」命令查看伺服器監聽的所有埠。
❻ java.sql.SQLException: No value specified for parameter 2
SQL第二個條件參數沒有值傳入。
邏輯為由用戶名查出用戶數據,如果用戶存在,驗證密碼。
但你的SQL卻要求兩個參數
將代碼中
Stringsql="select*fromuserswhereid=?andpasswd=?";
rs=dealDateBase.getRS(sql,user.getUsername());
改為:
Stringsql="select*fromuserswhereid=?";
rs=dealDateBase.getRS(sql,user.getUsername());
補充:如果你資料庫中存的username欄位為id,那這樣沒錯。
如果是username欄位,而你通過username去查詢時,SQL應為:
Stringsql="select*fromuserswhereusername=?";
❼ SQLException:關閉的連接如何解決
一般來將,Connection在DB端有最大空閑時間的限制。
如:mysql默認Connection在8個小時無人使用(即有線程用Connection發送了SQL),就會自動斷開。而此時,你本地配置的資料庫連接池,卻還不知道該連接已經被資料庫斷開了。這樣就產生了,雖然拿出了Connection卻在使用時,拋出已經關閉的異常。
解決辦法是為連接池加檢驗Connection有效性的配置。這個我就不好給出具體的配置了,因為得看你用的是什麼資料庫連接池實現。
❽ 未處理SqlException用戶登錄失敗的原因
根據異常提示,應該是登陸資料庫時沒有獲取到用戶名,
所以提示用戶空登陸失敗。檢查一下sql連接字元串是否正確賦值。
Data Source = myServerAddress;Initial Catalog = myDataBase;User Id = myUsername;Password = myPassword;
注意userID項。
創建資料庫連接的時候會用到一個資料庫連接字元串
cmd=new SqlCommand(strSQL,cn)
這個語句是創建一個sqlCommand,第二個參數cn就是連接字元串,跟一下cn的值看看