關於在vs中如何連線資料庫的問題

2021-10-03 17:32:21 字數 3177 閱讀 7642

cc# 關於在vs2010中如何連線資料庫sql server2008的問題

類似於這樣一段**(在vs中建立窗體程式,做乙個按鈕判斷是否連上了資料庫),關於連線的問題,我記錄如下:

private void button1_click(object sender, eventargs e)

1、 string sqlstr = 「data source=win-16dm53kenea\sqlexpress;intial catalog=demo1; integrated security=true;」;

解釋:直接寫機器名,然後打兩個斜槓,寫上sqlexpress。

這是連線資料庫的字串。

data source(資料來源)為「機器名\下面的資料庫伺服器」,express是乙個sql的免費版本,亦或是vs自帶這樣,如果你裝的是企業版,就沒這挖格,如果你是隨便裝的,都是預設選項,可能就有,沒關係,一開始,咱用的都是小型專案,不影響;\sqlexpress是必須要有兩個斜槓的,因為乙個\代表轉義字元;

intial catalog(最開始的目錄)為「資料庫」,你可以寫上你新建的資料庫的名字,它跟database沒有什麼區別,就跟曾用名和現在的名字,是乙個概念,都是叫你;

integrated security(綜合安全設定),可識別的值為 true、false、yes、no 以及與 true 等效的 sspi(強烈推薦)。填上true,表示用當前windows賬戶憑據進行身份驗證;填上false,將在連線中指定使用者 id 和密碼;填上sspi,表示以當前windows系統使用者身去登入sql server伺服器;

這三個部分,只寫data source=win-16dm53kenea\sqlexpress; integrated security=true;也是可以連線資料庫的……

2、 string sqlstr = 「data source=.\sqlexpress;intial catalog=demo1; integrated security=true;」;

.表示本機的機智寫法,多省事啊……

3、 string sqlstr = 「data source=(local)\sqlexpress;intial catalog=demo1; integrated security=true;」;

local,這個單詞就是本地的意思,注意要打括號;

4、 string sqlstr = 「data source=localhost\sqlexpress;intial catalog=demo1; integrated security=true;」;

localhost,等同於(local),注意不打括號,可以理解為本地伺服器,localhost&(local)是不經網絡卡傳輸!這點很重要,它不受網路防火牆和網絡卡相關的的限制。訪問localhost也不會解析成ip,不會占用網絡卡、網路資源。

以上適用於sql server資料庫的訪問模式為windows認證的情況。

5、string sqlstr = 「server=127.0.0.1;database=demo1; user id=sa; pwd=123456;」;

127.0.0.1在系統的正確解釋是:本機位址(本機伺服器);127.0.0.1是需要通過網絡卡傳輸,依賴網絡卡,並受到網路防火牆和網絡卡相關的限制;這就是為什麼有時候用localhost可以訪問,但用127.0.0.1就不可以的情況。

user id,使用者id;

適用於sql server資料庫的訪問模式為sql server認證的情況。

6、string sqlstr = 「server=192.168.43.156;database=demo1; user id=sa; pwd=123456;」;

填寫自己的本機ip,也是可以訪問的。

另外補充一下資料庫預設埠號:

sql server 1433

oracle 1521

mysql 3306

如果無法訪問資料庫,檢查幾個地方:

1、如果local不起作用,試試sql server配置管理器中sql server網路配置的sqlexpress的協議中,上面三個已啟用,shared memory,named pipes,tcp/ip;

2、如果127.0.0.1不起作用,試試在sql server配置管理器中sql server網路配置的sqlexpress的協議中,雙擊tcp/ip,彈出屬性框,選到ip位址,下面有乙個已啟用,把它開啟試試。

3、如果localhost不起作用,試試在sql native client10.0配置中新建乙個別名。

attention:所有操作都需要停止,再啟動sql server。

by the way:我不認為先裝sql server,或者先裝vs,會對最後結果有影響,畢竟都是同一家公司出來的產品,相容性應該是蠻好的,當然也有可能在登錄檔當中沒刪乾淨,導致不能安裝等問題,總而言之,現在這一把,我是先裝的vs2010,再裝sql server2008的。

留個爪印,以待後面不記得了的時候,翻一翻。

補充一下:有人之前一直挺好的,突然有一天,sql server連不上了……

彈出如下框框:

資料庫內部都可以正常連線,操作,考慮前陣子正常連線,是突然出現的問題;所以可能是設定出了問題,或者軟體衝突。

檢查lsp:

系統的 winsock 設定,重置一下

win+r鍵,輸入cmd確定,然後輸入重置命令:netsh winsock reset

問題解決……

powerdesigner連線資料庫的問題

1.jvm不能初始化 要求安裝32位的jdk,把path指向32的安裝目錄 2.non sql error could not load class oracle.jdbc.oracledriver 把odbc14.jar包放到powerdesigner安裝目錄,後加入classpath 3.non...

Qt 在vs下連線資料庫SQL server

qt 連線sql server在網上有很多教程,但是我是在vs2013下編譯qt程式,所有還有一些不一致的地方,倒騰了大半天,寫下來給有需要的朋友。在本地資料來源進行設定一般不會出什麼問題,主要講講動過 怎麼設定。qsqldatabase db qsqldatabase adddatabase qo...

在VS中利用配置檔案連線資料庫

一 在web.config裡面配置,後連線資料庫 1 web.config檔案 加在和 之間 三種配置方式 1.windows身份驗證,連線sql server資料庫 2.windows身份驗證,連線vs資料庫 3.sql server身份驗證,連線sql server資料庫 取字連線符串方式 1 ...