JDBC用IDEA連接SQLServer數(shù)據(jù)庫的超實用教程
前言
最近Java學(xué)完了JDBC,在連接數(shù)據(jù)庫這件事情上,也找了網(wǎng)上很多博主的文章,期間也遇到了不少問題,最終經(jīng)歷一番曲折解決了數(shù)據(jù)庫連接問題。我也理解新手在接觸JDBC時,尤其是在建立數(shù)據(jù)庫連接上非常令人頭疼。為此,博主花了晚上一個半小時,精心準(zhǔn)備了這篇教程來解答。
一、數(shù)據(jù)庫準(zhǔn)備
1.通過SQLServer配置管理器打開TCP/IP協(xié)議,設(shè)置狀態(tài)為已啟用
按照步驟:此電腦-->管理-->服務(wù)和應(yīng)用程序-->SQLServer配置管理器-->SQLServer網(wǎng)絡(luò)配置
-->選擇打開你本機SQLServer的實例的協(xié)議-->TCP/IP協(xié)議
注意:如果TCP/IP協(xié)議已被禁用則需要右鍵選中打開,將其設(shè)置為已啟用狀態(tài),否則會影響到后面的數(shù)據(jù)庫連接操作!啟用之后要重新啟動SQLServer服務(wù):打開SQLServer配置管理器里面的SQLServer服務(wù),右鍵SqlServerAnalysisServices(黃色圖標(biāo))重新啟動,耐心等待即可完成剛才的配置。

雙擊IP地址-->IPALL(下拉到最后)-->把TCP端口改為1433(1433為SQLServer數(shù)據(jù)庫的默認端口號,不同的數(shù)據(jù)庫有不同的默認端口號)

2.數(shù)據(jù)庫登錄模式設(shè)置為身份驗證登錄(如果已經(jīng)設(shè)置可忽略此步驟)
打開數(shù)據(jù)庫實例-->安全性-->登錄名-->右鍵sa-->屬性-->勾選SQLServer身份驗證并設(shè)置密碼

再打開狀態(tài),授予連接到數(shù)據(jù)庫引擎和啟用登錄名
(注:一般默認如此,但是不排除在安裝SQLServer數(shù)據(jù)庫時設(shè)置了拒絕和禁用因素,所以查看一下確保最后的連接能夠成功)

再右鍵數(shù)據(jù)庫實例打開服務(wù)器屬性,打開安全性,配置如下

下面重啟數(shù)據(jù)庫使得上述配置生效即可。
(關(guān)閉重開或者右鍵服務(wù)器點擊重新啟動數(shù)據(jù)庫服務(wù)即可)
3.下載SQLServer驅(qū)動jar包
已上傳百度網(wǎng)盤:
鏈接:https://pan.baidu.com/s/1tiVlskrpYt1T2FKuF4ROqw?pwd=quaw
提取碼: quaw
(注:里面有三個驅(qū)動包,讀者根據(jù)自己SQLServer版本選擇,本人目前用的是SQLServer2012)
二、IDEA準(zhǔn)備
1.導(dǎo)入SQLServer驅(qū)動jar包
左上角Files-->Project Structure-->Libraries-->點擊 + 號-->選擇Java-->選擇剛剛下載的SQLServer驅(qū)動包的路徑-->OK


2.編寫測試代碼,向SQLServer數(shù)據(jù)庫發(fā)動SQL語句請求
以下測試代碼建立在數(shù)據(jù)庫中已經(jīng)建立了名為school的數(shù)據(jù)庫,并且在里面創(chuàng)建一張student表

測試代碼:
import java.sql.*;
public class sql2 {
public static void main(String args[]){
Connection con;
Statement st;
ResultSet rs;
String dbURL="jdbc:sqlserver://localhost:1433;DatabaseName=school";
String userName="sa";
String userPwd="123456";
String sql="select * from student";
try {
con = DriverManager.getConnection(dbURL, userName, userPwd);
st = con.createStatement();
rs = st.executeQuery(sql);
while (rs.next()) {
String sno = rs.getString(1);
String sname = rs.getString(2);
String ssex = rs.getString(3);
String sbir = rs.getString(4);
String sclass = rs.getString(5);
System.out.println("學(xué)號:" + sno + "\n姓名:" + sname + "\n性別:" + ssex
+ "\n出生日期:" + sbir + "\n班號:" + sclass);
}
rs.close();
st.close();
con.close();
}catch(SQLException e){
e.printStackTrace();
System.out.println("數(shù)據(jù)庫連接失敗?。?!");
}
}
}運行結(jié)果:

能夠打印出從數(shù)據(jù)庫中查詢到的數(shù)據(jù),那么恭喜你,數(shù)據(jù)庫已經(jīng)連接成功啦!
三、連接報錯解決方案
請借鑒這位博主的文章,挺詳細的
四、小結(jié)
作為程序員,自行解決問題的能力非常重要,即所謂的Debug能力。網(wǎng)上很流行的一句話:“程序員工作三連:查Bug,改Bug,寫B(tài)ug......”,當(dāng)然這是調(diào)侃,但也很現(xiàn)實。
凡是遇到問題先不要慌,勇于探索解決它。就像這個數(shù)據(jù)庫連接問題,我一開始搞也遇到了很多問題,歷經(jīng)曲折終于解決了,并成功幫助兩個室友成功連接數(shù)據(jù)庫,十分鐘左右就搞定了。
到此這篇關(guān)于JDBC用IDEA連接SQLServer數(shù)據(jù)庫的超實用教程的文章就介紹到這了,更多相關(guān)JDBC用IDEA連接SQLServer內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java JTree JCheckBox樹復(fù)選框詳解
這篇文章主要為大家詳細介紹了java JTree JCheckBox樹復(fù)選框的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-11-11
Java入門學(xué)習(xí)之環(huán)境變量與程序運行原理詳解
Java是一種廣泛使用的面向?qū)ο缶幊陶Z言,具有跨平臺、可移植性和安全性等特點,這篇文章主要介紹了Java入門學(xué)習(xí)之環(huán)境變量與程序運行原理的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2025-07-07
一篇文章徹底弄懂SpringBoot項目jdk版本及依賴不兼容問題
這篇文章主要給大家介紹了關(guān)于徹底弄懂SpringBoot項目jdk版本及依賴不兼容問題的相關(guān)資料,文中通過圖文介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2023-01-01

