最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

再也不用擔(dān)心連不上數(shù)據(jù)庫了

2022-01-05 17:20 作者:新閣教育  | 我要投稿

-Begin-

前言

大家好,初學(xué)者遇到數(shù)據(jù)庫連接不上,是很常見的情況,可能會以各種形式呈現(xiàn)出來,今天跟大家分享一下,如何解決C#連接不上數(shù)據(jù)庫的問題。

本文主要針對的是SQLServer數(shù)據(jù)庫,采用sa賬戶登錄,配置文件采用appconfig,本地數(shù)據(jù)庫的情況,如果情形不一樣,可能無法涵蓋。

常見錯誤

以下這幾種情況,都可能是連接字符串導(dǎo)致的問題,可能還會有其他情況,后續(xù)再完善補(bǔ)充。

(1)代碼報錯,提示sa登錄失敗。

(2)提示連接出錯,未找到或無法訪問服務(wù)器。


(3)代碼報錯,提示類型初始值設(shè)定項引發(fā)異常。


(4)直接彈窗,提示類型初始值設(shè)定項引發(fā)異常。


(5)代碼報錯,不支持關(guān)鍵字。


(6)代碼報錯,提示未將對象引用到對象的實例


(7)代碼報錯,提示初始值設(shè)定引發(fā)異常項


解決方案

第一步:首先一定要保證SMMS可以連接上數(shù)據(jù)庫,這是一個大的前提,如果SSMS都不能連接數(shù)據(jù)庫,就先解決這個問題之后,再往后面看。

第二步:如果SSMS可以連接數(shù)據(jù)庫,那么我們觀察一下這個登錄界面分析一下,SQLServer連接字符串主要由四個部分組成,分別是服務(wù)器名稱Server、數(shù)據(jù)庫名稱DataBase、用戶ID即Uid、密碼即Pwd,除了數(shù)據(jù)庫名稱之外,其他三個參數(shù)都應(yīng)該與這上面的保持一致,否則就會出錯。

第三步:簡而言之,就是把SSMS這個登錄界面的參數(shù)數(shù)據(jù)復(fù)制到連接字符串里,進(jìn)行替換即可。

第四步:復(fù)制完成之后,如果采用的是字符串方式,對于命名實例是可能會出現(xiàn)語法錯誤的,這個是因為轉(zhuǎn)義的問題,解決方案有兩種,第一種方式是在連接字符串前面加個@進(jìn)行轉(zhuǎn)義,第二種方式是將連接字符串中的單斜杠改成雙斜杠。

private string ConnStr=@"Server=DESKTOP-ICFINTH\Wincc;DataBase=ProductDB;Uid=sa;Pwd=123";

private string ConnStr = "Server=DESKTOP-ICFINTH\\Wincc;DataBase=ProductDB;Uid=sa;Pwd=123";

排查步驟

如果問題仍然沒有解決,按照下面的步驟進(jìn)行檢查:

(1) 檢查數(shù)據(jù)庫名稱是否正確

(2) 檢查connectString的名稱有沒有錯誤


(3) 檢查下面這行代碼有沒有錯誤


(4) 對照檢查SQLHelper里的代碼有沒有錯誤

概念問題

以下幾個概念問題,需要大家注意:

(1)怎么判斷是命名實例還是默認(rèn)實例?

如圖,服務(wù)器名稱為DESKTOP-5DI6FNQ,這種就是默認(rèn)實例。

當(dāng)名稱中帶有 ’ \ ’ 時,例如DESKTOP-5DI6FNQ\WINCC,這種就是命名實例,其中WINCC就是實例名稱,默認(rèn)實例和命名實例可以共存,也可以有多個實例名稱。


(2)使用appconfig和不用appconfig有什么區(qū)別?

使用appconfig方式是通過xml配置文件來獲取連接字符串。配置文件可以通過記事本等其他軟件打開并修改。這樣就可以使用不更改代碼的方式改變數(shù)據(jù)庫的連接字符串。不使用appconfig,只能在代碼中定義固定的連接字符串。

有一點要注意,對于命名實例,如果直接用字符串的方式,是需要雙斜杠或@轉(zhuǎn)義,如果是appconfig的方式,則是單斜杠,不能寫成雙斜杠。

寫在最后

本文只是從常見的錯誤角度來說明了解決方案和排查步驟,實際情況錯綜復(fù)雜,只有掌握好方法和思路,才能盡快解決問題。



再也不用擔(dān)心連不上數(shù)據(jù)庫了的評論 (共 條)

分享到微博請遵守國家法律
砚山县| 台州市| 通化县| 揭阳市| 绥德县| 安丘市| 慈溪市| 大理市| 宜章县| 新干县| 大石桥市| 长宁县| 安西县| 凉山| 奉贤区| 天祝| 马尔康县| 丹寨县| 华阴市| 织金县| 堆龙德庆县| 巴中市| 新宾| 蕉岭县| 沐川县| 明光市| 什邡市| 双流县| 阿拉善盟| 攀枝花市| 大城县| 新营市| 广南县| 陵川县| 黑水县| 泰来县| 福州市| 望奎县| 喀喇沁旗| 万盛区| 高邑县|