注意:在使用這個類的時候,先將對應資料庫的驅動包(JAR包),復制進項目的WebRoot文件夾下的WEB-INF文件夾下的lib文件夾下,切記必須要對應的JAR包,否則無法使用資料庫的
import java.sql.*;
public class BaseDAO {
private static final String DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver";//注意:此驅動是SQL2005及以上版本的導入驅動包連接字元串
private static final String CONNECTION = "jdbc:sqlserver://localhost:1433;databaseName=Employee"; //資料庫連接字元串,databaseName就是你要連接的資料庫名,
private static final String NAME = "sa"; //資料庫用戶名
private static final String PWD = "sa"; //資料庫密碼
public static Connection GetConnection() {
Connection con = null;
try {
Class.forName(DRIVER);
con = DriverManager.getConnection(CONNECTION, NAME, PWD);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return con;
}
public static void close(ResultSet rs, PreparedStatement ps, Connection con) {
try {
if (null != rs) {
rs.close();
}
if (null != ps) {
ps.close();
}
if (null != con) {
con.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
2. 請教!為何我設置odbc數據源連接sql server資料庫連接不上
能否連接得上,要看你的安裝方式:不妨照我下面的說明試一試:使用SQL語句:使用NT驗證的安裝方法的區域網共享SQL
server伺服器:1.進入企業管理器添加用戶帳戶:[安全性][新建登錄][常規]葉面:[名稱]:選擇ECHOGUEST,使用windows身份驗證,資料庫改為sqlserver[伺服器角色]葉面:選擇[Database
Creators]、[Bulk
Insert
Administrators][資料庫訪問]葉面:選擇[sqlserver]2.進入到sqlserver資料庫:選擇[用戶][ECHOGUEST]選擇資料庫角色中允許:默認的[public],添加db_backupoperator,db_datareader,db_datawriter3.在查旬分析器中添加用戶帳戶:語法:sp_grantdbaccess
[@loginname=]'login'[,[@name_in_db]'name_in_db'[OUTPUT]]login:當前資料庫中新的安全賬戶的登錄名稱,Windows
NT組和用戶必須使用Windows
NT域名限定,格式為『域用戶』例如LONDONJocb.登錄不能使用資料庫中已有的賬戶作為別名。name_in_db:表示資料庫中的賬戶的別名。例子:EXEC
sp_grantdbaccess
'ECHOGUEST','ECHOGUEST'但是要注意:(1).在使用安全賬戶訪問資料庫之前,必須授予他對當前資料庫的訪問許可權,刪除許可權sp_revokedbaccess
[@name_in_db=]'name'。(2).如果當前資料庫中沒有guest安全賬戶,而且login為guest,則可以添加guest的安全賬戶。(3).sa登錄不能添加到資料庫中。(4).不能再用戶定義的事務中執行sp_grantdbaccess.
3. c++與sqlserver資料庫怎樣連接
HRESULThr=sqlSp.CreateInstance(_uuidof(Connection));
if(FAILED(hr))
{
AfxMessageBox("_ConnectionPtr對象指針實例化失敗!!!");
return;
}
else{
try{
_bstr_tstrConnect="Driver={sqlserver};server=192.168.1.29;uid=sa;pwd=ebank@123;database=baoshang;";
sqlSp->Open(strConnect,"","",adModeUnknown);
}
catch(_com_error&e)
{
AfxMessageBox(e.Description());
return;
}
_RecordsetPtrm_pRecordset;
if(FAILED(m_pRecordset.CreateInstance(_uuidof(Recordset))))
{
AfxMessageBox("記錄集對象指針實例化失敗!");
return;
}
try{
m_pRecordset->Open("select*fromdbo.TB_DICT_CONTTYPE",(IDispatch*)sqlSp,adOpenDynamic,adLockOptimistic,adCmdText);
}
catch(_com_error&e)
{
AfxMessageBox(e.Description());
return;
}
try{
m_pRecordset->MoveFirst();
while(!m_pRecordset->adoEOF)
{
CStringinsertTime=(char*)(_bstr_t)(m_pRecordset->Fields->GetItem(_variant_t("F_TYPE_ID"))->Value);
AfxMessageBox(insertTime);
m_pRecordset->MoveNext();
}
}
catch(_com_error&e)
{
AfxMessageBox(e.Description());
return;
}
}
(3)數據源連接sqlserver擴展閱讀
連接資料庫三支路
1、導入資料庫命名空間:
usingSystem.Data.SqlClient;
2、創建資料庫連接對象,並指定資料庫連接字元串:
//創建資料庫連接對象:SqlConnectionconn=newSqlConnection(str);
//資料庫連接字元串:Stringstr="DataSource=.;InitialCatalog=test;IntegratedSecurity=True";
3、打開與資料庫的連接:
Open.conn();
4、創建操作命令對象Command,並指定操作數據源以及操作命令:
//創建操作命令對象:SqlCommandcmd=newSqlCommand();
//操作數據源:cmd.Connection=conn;
//操作命令:cmd.CommandText="selectcount(*)fromuser_tablewhereuserName='"+uName+"'anserPwd='"+uPwd+"'";
4. 如何連接SQLSERVER 2000資料庫
遠程連接sql server 2000伺服器的解決方案
一、 看ping 伺服器IP能否ping通。
這個實際上是看和遠程sql server 2000伺服器的物理連接是否存在。如果不行,請檢查網路,查看配置,當然得確保遠程sql server 2000伺服器的IP拼寫正確。
二 、在Dos或命令行下輸入telnet 伺服器IP 埠,看能否連通。
如telnet 202.114.100.100 1433
通常埠值是1433,因為1433是sql server 2000的對於Tcp/IP的默認偵聽埠。如果有問題,通常這一步會出問題。通常的提示是「……無法打開連接,連接失敗"。
如果這一步有問題,應該檢查以下選項。
1. 檢查遠程伺服器是否啟動了sql server 2000服務。如果沒有,則啟動。
2. 檢查伺服器端有沒啟用Tcp/IP協議,因為遠程連接(通過網際網路)需要靠這個協議。檢查方法是,在伺服器上打開 開始菜單->程序->Microsoft SQL Server->伺服器網路實用工具,看啟用的協議里是否有tcp/ip協議,如果沒有,則啟用它。
3. 檢查伺服器的tcp/ip埠是否配置為1433埠。仍然在伺服器網路實用工具里查看啟用協議裡面的tcp/ip的屬性,確保默認埠為1433,並且隱藏伺服器復選框沒有勾上。
事實上,如果默認埠被修改,也是可以的,但是在客戶端做telnet測試時,寫伺服器埠號時必須與伺服器配置的埠號保持一致。如果隱藏伺服器復選框被勾選,則意味著客戶端無法通過枚舉伺服器來看到這台伺服器,起到了保護的作用,但不影響連接,但是Tcp/ip協議的默認埠將被隱式修改為2433,在客戶端連接時必須作相應的改變。
4. 如果伺服器端操作系統打過sp2補丁,則要對windows防火牆作一定的配置,要對它開放1433埠,通常在測試時可以直接關掉windows防火牆(其他的防火牆也關掉最好)。
5. 檢查伺服器是否在1433埠偵聽。如果伺服器沒有在tcp連接的1433埠偵聽,則是連接不上的。檢查方法是在伺服器的dos或命令行下面輸入
netstat -a -n 或者是netstat -an,在結果列表裡看是否有類似 tcp 127.0.0.1 1433 listening 的項。如果沒有,則通常需要給sql server 2000打上至少sp3的補丁。其實在伺服器端啟動查詢分析器,輸入 select @@version 執行後可以看到版本號,版本號在8.0.2039以下的都需要打補丁。
如果以上都沒問題,這時再做telnet 伺服器ip 1433 測試,將會看到屏幕一閃之後游標在左上角不停閃動。恭喜,馬上可以開始在企業管理器或查詢分析器連接了。
三、 檢查客戶端設置
程序->Microsoft SQL Server -> 客戶端網路使用工具。像在伺服器網路實用工具里一樣,確保客戶端tcp/ip協議啟用,並且默認埠為1433(或其他埠,與伺服器端保持一致就行)。
四、 在企業管理器里或查詢那分析器連接測試
企業管理器->右鍵SQlserver組->新建sqlserver注冊->下一步->寫入遠程IP->下一步->選Sqlserver登陸->下一步->寫入登陸名與密碼(sa,password)->下一步->下一步->完成
查詢分析器->文件->連接->寫入遠程IP->寫入登錄名和密碼(sa,password)->確定
通常建議在查詢分析器里做,因為默認情況下,通過企業管理器注冊另外一台SQL Server的超時設置是4秒,而查詢分析器是15秒。
修改默認連接超時的方法:
企業管理器->工具->選項->在彈出的"SQL Server企業管理器屬性"窗口中,點擊"高級"選項卡->連接設置->在 登錄超時(秒) 後面的框里輸入一個較大的數字
查詢分析器->工具->選項->連接->在 登錄超時(秒) 後面的框里輸入一個較大的數字
通常就可以連通了,如果提示錯誤,則進入下一步。
五、 錯誤產生的原因通常是由於SQL Server使用了"僅 Windows"的身份驗證方式,因此用戶無法使用SQL Server的登錄帳戶(如 sa )進行連接。解決方法如下所示:
1. 在伺服器端使用企業管理器,並且選擇"使用 Windows 身份驗證"連接上 SQL Server。
2. 展開"SQL Server組",滑鼠右鍵點擊SQL Server伺服器的名稱,選擇"屬性",再選擇"安全性"選項卡。
3. 在"身份驗證"下,選擇"SQL Server和 Windows "。
4. 重新啟動SQL Server服務。(在dos或命令行下面net stop mssqlserver停止服務,net start mssqlserver啟動服務,也是一種快捷的方法)。
附註:在連接本地伺服器時,通常使用的是命名管道協議(在伺服器網路實用工具里可以看到啟用的協議有這個),默認埠是445,因此在本地能連通是不能說明什麼問題的,連接遠程伺服器是完全不同的協議)
5. 如何建立sqlserver 外部資料庫連接
首先你說的外部資料庫是指的跨伺服器還是在同一個伺服器上;
如果在同一台服務上的兩個庫的話,直接使用庫名.表名直接訪問,如果是在不同伺服器上的話,需要建立伺服器連接:
exec
sp_addlinkedserver
--鏈接服務名稱
@server
=
'UPDateLink',
--產品名稱
@srvproct
=
'',
--訪問介面
@provider
=
'SQLOLEDB',
--數據源
@datasrc
=
'200.200.200.251'
declare
@LocalUser
varchar(20),@ServerUser
varchar(20),@SeverPSW
varchar(20)
Set
@LocalUser
=
'sa'
Set
@ServerUser
=
'root'
Set
@SeverPSW
=
'617114'
exec
sp_addlinkedsrvlogin
UPDateLink,False,@LocalUser,@ServerUser,@SeverPSW
6. sqlserver怎麼連接資料庫
首先,配置環境變數。另外,如果你的機子上沒有資料庫驅動jar包的話,需要下載一個sqljdbc4.jar。下面,右擊「我的電腦」》》選擇「屬性」》》再選擇「高級」》》選中「環境變數」。
在彈出的對話框中,系統變數欄如果已經有了CLASSPATH系統變數(注意大寫),那麼在最後添上jar包的絕對路徑(;d:\sqljdbc4.jar),注意加上分隔符「;」。如果沒有CLASSPATH,那麼新建一個,如圖中所示。。
其次,對SqlServer配置管理器進行設置。首先打開SqlServer配置管理器。具體步驟如圖示。
進入SQL配置管理器後,選中左側「SQL Server網路配置」》》再選中「MSSQLSERVER的協議」雙擊後,右側窗口會有「TCP/IP」選項。雙擊進入。如圖示。
在TCP/IP屬性中對IP地址進行設置,IP地址設為「127.0.0.1」,即本地ip。埠值在後面會用到,先記住。如圖示。注意,TCP/IP若不是處於啟動狀態,要右擊後選擇「啟動」。
進行完上述設置後,打開MyEclipse進入資料庫操作界面。打開後,依次選擇「window」》》「open perspective」>>"other..."進入對話框,選擇「MyEclipse DataBase Explorer」後就進入了。如圖示。
在右側窗口空白區域右擊滑鼠,選擇"New.....",打開資料庫驅動對話框,具體操作步驟見圖所示。
對DatabaseDriver進行設置,「Driver template」中選擇Sqlserver;「Driver name」可以隨便取;「Connection URL」如圖所示設置,注意,1433,即為上面提到的埠值。後面的「databaseName=bank」是Sql中已存在的一個資料庫名。賬號、密碼一般是「sa」,然後,點擊「Add JARs」把jar包導入。點擊「finish」完成設置。
上述設置完成後,MyEclipse左側窗口就會出現剛設置的「Driver name」即sqlserver,如圖示。右擊「sqlserver」,選擇「open connection...」,在彈出的對話框中輸入賬號密碼,就是上面的「sa」。點擊「OK」就可以了,資料庫連接成功了。效果如圖示。
7. 如何連接sqlserver資料庫
以sqlserver2008R2為例。
1、打開sql2008,使用windows身份登錄
8. sql server資料庫連接
一.設置客戶端網路實用工具
點擊「開始」-「程序」,在「microsoft
sql
server」菜單中選擇「客戶端網路實用工具」。
點擊圖片可在新窗口打開
在「別名」選項中點擊「添加」。
點擊圖片可在新窗口打開
在「伺服器別名」中,填入您網站域名,在「網路庫」區域中點擊「tcp/ip」,在「連接參數」區域取消「動態決定埠」,指定「埠號」為2433。填寫完畢後,點擊「確定」按鈕保存配置。
點擊圖片可在新窗口打開
二.企業管理器的使用
點擊「開始」-「程序」,在「microsoft
sql
server」菜單中打開「企業管理器」。在企業管理器中,右鍵單擊「sql
server組」,選擇「新建sql
server注冊」。
點擊圖片可在新窗口打開
在屬性窗口中選擇「高級」選項卡,將「登錄超時」的數值設置為0。按照上面說的把遠程資料庫就已經連上了
點擊圖片可在新窗口打開
此時會出現sql
server屬性窗口,在「伺服器」中填入您網站的域名,選擇「使用sql
server身份驗證」,「登錄名」和「密碼」分別填入主機開通郵件中的用戶名和密碼,然後點擊「確定」。
點擊圖片可在新窗口打開
連接成功後,你會看到「sql
server組」中多了一個名稱為您網站域名的伺服器。此時,您就可以像操作本地sql資料庫一樣管理網站資料庫了。
注意事項:
如果連接的時候出現超時錯誤,更改超時時間即可,方法是點擊「工具」-「選項」。