以文本方式查看主題 - 曙海教育集團(tuán)論壇 (http://www.scb-ycwb.com/bbs/index.asp) -- SQL Server數(shù)據(jù)庫(kù) (http://www.scb-ycwb.com/bbs/list.asp?boardid=67) ---- 如何在程序中不同數(shù)據(jù)庫(kù)間操作數(shù)據(jù)? (http://www.scb-ycwb.com/bbs/dispbbs.asp?boardid=67&id=2533) |
-- 作者:wangxinxin -- 發(fā)布時(shí)間:2010-12-13 13:49:31 -- 如何在程序中不同數(shù)據(jù)庫(kù)間操作數(shù)據(jù)? 在程序中ADOConnection的ConnectionString連接遠(yuǎn)程數(shù)據(jù)庫(kù), 但執(zhí)行下述語(yǔ)句時(shí)卻不成功,顯示出錯(cuò)信息如下:[DBNETLIB][ConnectionOpe(Connect().]SQL Server不存在或拒絕訪問(wèn),如何解決呢? (其目的是想從本地?cái)?shù)據(jù)庫(kù)選擇數(shù)據(jù)記錄,然后直接插入遠(yuǎn)程數(shù)據(jù)庫(kù)的表中。或者有什么方法可以達(dá)到目的) “it”為本地?cái)?shù)據(jù)庫(kù)名 ADOConnection.Connected := True; ADOConnection.Execute(\'SELECT * into Test FROM openrowset(\'\'sqloledb\'\',\'\'it\'\';\'\'sa\'\';\'\'123456\'\',Test.dbo.Test) \'); 2樓: 個(gè)人覺(jué)得是沒(méi)有開(kāi)SQL SERVER驗(yàn)證,連接串是什么 ============= 接下來(lái)我們要到客戶(hù)端檢查客戶(hù)端的網(wǎng)絡(luò)配置 ============= 我們同樣可以利用 SQL Server 自帶的客戶(hù)端網(wǎng)絡(luò)使用工具來(lái)進(jìn)行檢查, 點(diǎn)擊:程序 -- Microsoft SQL Server -- 客戶(hù)端網(wǎng)絡(luò)使用工具 打開(kāi)該工具后,在"常規(guī)"項(xiàng)中,可以看到客戶(hù)端啟用了哪些協(xié)議. 一般而言,我們同樣需要啟用命名管道以及 TCP/IP 協(xié)議. 點(diǎn)擊 TCP/IP 協(xié)議,選擇"屬性",可以檢查客戶(hù)端默認(rèn)連接端口的設(shè)置,該端口必須與服務(wù)器一致. 單擊"別名"選項(xiàng)卡,還可以為服務(wù)器配置別名.服務(wù)器的別名是用來(lái)連接的名稱(chēng), 連接參數(shù)中的服務(wù)器是真正的服務(wù)器名稱(chēng),兩者可以相同或不同.別名的設(shè)置與使用HOSTS文件有相似之處. 二."無(wú)法連接到服務(wù)器,用戶(hù)xxx登陸失敗" 該錯(cuò)誤產(chǎn)生的原因是由于SQL Server使用了"僅 Windows"的身份驗(yàn)證方式, 因此用戶(hù)無(wú)法使用SQL Server的登錄帳戶(hù)(如 sa )進(jìn)行連接.解決方法如下所示: 1.在服務(wù)器端使用企業(yè)管理器,并且選擇"使用 Windows 身份驗(yàn)證"連接上 SQL Server 操作步驟: 在企業(yè)管理器中 --右鍵你的服務(wù)器實(shí)例(就是那個(gè)有綠色圖標(biāo)的) --編輯SQL Server注冊(cè)屬性 --選擇"使用windows身份驗(yàn)證" --選擇"使用SQL Server身份驗(yàn)證" --登錄名輸入:sa,密碼輸入sa的密碼 --確定 2.設(shè)置允許SQL Server身份登錄 操作步驟: 在企業(yè)管理器中 --展開(kāi)"SQL Server組",鼠標(biāo)右鍵點(diǎn)擊SQL Server服務(wù)器的名稱(chēng) --選擇"屬性" --再選擇"安全性"選項(xiàng)卡 --在"身份驗(yàn)證"下,選擇"SQL Server和 Windows ". --確定,并重新啟動(dòng)SQL Server服務(wù). 在以上解決方法中,如果在第 1 步中使用"使用 Windows 身份驗(yàn)證"連接 SQL Server 失敗, 那就通過(guò)修改注冊(cè)表來(lái)解決此問(wèn)題: 1.點(diǎn)擊"開(kāi)始"-"運(yùn)行",輸入regedit,回車(chē)進(jìn)入注冊(cè)表編輯器 2.依次展開(kāi)注冊(cè)表項(xiàng),瀏覽到以下注冊(cè)表鍵: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer] 3.在屏幕右方找到名稱(chēng)"LoginMode",雙擊編輯雙字節(jié)值 4.將原值從1改為2,點(diǎn)擊"確定" 5.關(guān)閉注冊(cè)表編輯器 6.重新啟動(dòng)SQL Server服務(wù). 此時(shí),用戶(hù)可以成功地使用sa在企業(yè)管理器中新建SQL Server注冊(cè), 但是仍然無(wú)法使用Windows身份驗(yàn)證模式來(lái)連接SQL Server. 這是因?yàn)樵?SQL Server 中有兩個(gè)缺省的登錄帳戶(hù): BUILTIN\Administrators <機(jī)器名>\Administrator 被刪除. 要恢復(fù)這兩個(gè)帳戶(hù),可以使用以下的方法: 1.打開(kāi)企業(yè)管理器,展開(kāi)服務(wù)器組,然后展開(kāi)服務(wù)器 2.展開(kāi)"安全性",右擊"登錄",然后單擊"新建登錄" 3.在"名稱(chēng)"框中,輸入 BUILTIN\Administrators 4.在"服務(wù)器角色"選項(xiàng)卡中,選擇"System Administrators" 5.點(diǎn)擊"確定"退出 6.使用同樣方法添加 <機(jī)器名>\Administrator 登錄. 說(shuō)明: 以下注冊(cè)表鍵: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode 的值決定了SQL Server將采取何種身份驗(yàn)證模式. 1.表示使用"Windows 身份驗(yàn)證"模式 2.表示使用混合模式(Windows 身份驗(yàn)證和 SQL Server 身份驗(yàn)證). |