1. 程式人生 > >C++與SQL Server2008連線及配置

C++與SQL Server2008連線及配置

SQL Server2008配置

安裝完成後需要確保SQL Server服務啟動,啟動的步驟如下:
1. 在開始選單–>Microsoft SQL Server 2008 R2–>配置工具–>sql server 配置管理器,開啟配置管理器,切換到如下介面
這裡寫圖片描述
在這個介面中啟動如圖中的服務,啟動方法:右擊–>啟動
如果切換開啟使用者為本地電腦賬戶,則需要本地電腦賬戶設定密碼,否則會提示錯誤

然後切換到如下介面:
這裡寫圖片描述
在這個介面中啟動右側中SQL Server(MSSQLSERVER)這個選項(如果是啟動狀態,配置瞭如上中的介面,就需要重新啟動)
2. 在開始選單–>Microsoft SQL Server 2008 R2

–>SQL Server Management Studio,開啟SQL Server Management Studio軟體登陸資料庫如下圖所示:
這裡寫圖片描述
配置賬戶sa
點選連線進入資料庫管理介面,,在資料庫中已經預設建立了一個登陸名(sa), 右擊登陸名下的sa–>屬性,進入如下介面
這裡寫圖片描述
在這個介面(常規)中設定密碼(密碼確認密碼是以後用sa登陸資料庫的密碼),切換到狀態介面中,如下圖設定
這裡寫圖片描述
如果禁用拒絕,C++連線就會出現異常
配置資料庫安全性連線配置
配置資料庫的安全性,右擊資料庫服務(根目錄)–>屬性–>安全性,如下圖配置:
這裡寫圖片描述
伺服器身份驗證
一定要選擇SQL Server和Windows 身份驗證模式,否則C++用sa這個使用者名稱登陸不上,會出現提示未知錯誤
連線選項卡中,勾選允許連線到此伺服器,不然連線資料庫失敗

SQL Server2008的問題

  1. 已成功與伺服器建立連線,但是在登入過程中發生錯取。(provider:共享記憶體提供程式,error:0-管道的另一端上無任何程序。)(Microsoft SQL Server,錯誤:233)
    解決方法:開啟程式所有程式Microsoft SQL Server 2005配置工具SQL Server 配置管理器,在彈出的窗體中,找到SQL Server 2005 網路配置,把MSSQLSERVER的協議
    下的Named PipesTCP/IP啟動,然後重新啟動Microsoft SQL Server 2005就可以了。
  2. SQL Server 配置管理器遠端過程呼叫失敗。[0x800706be]解決方案
    電腦上安裝了兩個版本的SQL server,解除安裝另個SQL server版本

C++操作SQL Server2008

連線資料庫

  1. 載入.dll檔案
using namespace std;
#import "path\\msado15.dll" no_namespace rename("EOF", "adoEOF")  /*path是msado15.dll的路徑*/
/*在類中定義如下幾個變數*/
_ConnectionPtr m_pConnection;  
_CommandPtr m_pCommand;  
_RecordsetPtr m_pRecordSet;/*如果_ConnectionPtr提示未找到,檢查你的msado15.dll路徑是否設定正確*/
  1. 連線資料庫
HRESULT hr=CoInitialize(NULL);  //初始化COM  ;  
if(FAILED(hr))
{
    //初始化COM失敗  ;  
    return;
}
hr = m_pConnection.CreateInstance(("ADODB.Connection")); /*建立例項*/
/*hr = m_pConnection.CreateInstance(__uuidof (Connection ));*/
if(FAILED(hr))
{
    //物件指標例項化失敗  ;  
    return;
}
try  
{
    _bstr_t strConnect= "Provider=SQLOLEDB.1;Password=123;Persist Security Info=True;User ID=sa;Initial Catalog=QPServerInfoDB;Data Source=192.168.1.7,1433;";/*Data Source 是本機IP地址或者網路地址*/
    /*"Provider=SQLOLEDB.1;Password=123;Persist Security Info=False;User ID=sa;Initial Catalog=QPServerInfoDB;Data Source=PC201602252148";*/
    /*"Driver={sql server};server=PC201602252148;uid=sa;pwd=123"*/
    /*"Driver={sql server};server=192.168.0.7,1433;uid=sa;pwd=123"*/
    hr=hr=m_pConnection->Open(strConnect, L"",L"", adModeUnknown);
    if(FAILED(hr))/*FAILED(hr)代表hr<0*/
    {
        /*開啟資料庫失敗*/
    }
} 
catch(_com_error &e)  
{  
    MessageBox(e.ErrorMessage()); /*打印出異常原因*/
}

連線資料庫中Persist Security Info=True這個屬性的解釋
Persist Security Info屬性的意思是表示是否儲存安全資訊,其實可以簡單的理解為”ADO在資料庫連線成功後是否儲存密碼資訊”,
True表示儲存,False表示不儲存
測試環節

資料庫連線前

ConnectString="Provider=MSDAORA.1;Password=mypassword;User ID=yzs;Data Source=ydgl22;Persist Security Info=false"

資料庫連線成功後

ConnectString="Provider=MSDAORA.1;User ID=yzs;Data Source=ydgl22"

資料庫連線前

ConnectString="Provider=MSDAORA.1;Password=mypassword;User ID=yzs;Data Source=ydgl22;Persist Security Info=true"

資料庫連線成功後

ConnectString="Provider=MSDAORA.1;Password=mypassword;User ID=dlyx;Data Source=ydgl22"

C++連線問題

  1. IDispatch error #3149異常
    檢查資料庫是否可以連線,測試方法:
    新建一個.txt檔案,重新命名為新建文字文件.udl,然後
    檢查strConnect字串是否合法,右擊屬性–>提供程式,選擇如下:
    這裡寫圖片描述
    切換到連線,如下:
    這裡寫圖片描述
    點選測試連線
  2. 未知錯誤
    服務沒有開啟,或者沒有按照上面的步驟設定伺服器,設定完成後要重啟

相關推薦

C++SQL Server2008連線配置

SQL Server2008配置 安裝完成後需要確保SQL Server服務啟動,啟動的步驟如下: 1. 在開始選單–>Microsoft SQL Server 2008 R2–>配置工

C#SQL Server資料庫連線

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.SqlClient; namesp

JDBC工具類(JDBC工具類,封裝方法(公共的、靜態的)進行資料庫的連線執行sql命令,在需要使用的類中直接呼叫。)

JDBC工具類,封裝方法(公共的、靜態的)進行與資料庫的連線及執行sql命令,在需要使用的類中直接呼叫。 package com.offcn.util; import java.io.IOException; import java.io.InputStrea

Unity使用C#實現簡單Scoket連線服務端客戶端通訊

簡介:網路程式設計是個很有意思的事情,偶然翻出來很久之前剛開始看Socket的時候寫的一個例項,貼出來吧Unity中實現簡單的Socket連線,c#中提供了豐富的API,直接上程式碼。服務端程式碼: Thread connectThread;//當前服務端監聽子執行緒

C#SQLServer資料庫連線

第一種連線資料庫方法:直接通過資料庫的使用者名稱、密碼等連線 步驟: (1)建立SqlConnection物件,指定SqlConnection物件的ConnectionString屬性; (2)開啟資料庫連線; (3)指定SQL語句; (4)建立SqlDataAdapter物件和DataSet

C#SQL Server數據庫連接

threading 語句 open() 成功 ssa span esc mman cat using System; using System.Collections.Generic; using System.Linq; using System.Text; using

Cygwin踩坑記錄(四)-openSSHopenSSL的安裝配置

一、安裝openSSH與openSS 因為工作關係我需要在Cygwin執行 curl -s "https://get.sdkman.io" | bash 命令將Sdkman下載到本地。 在剛開始的時候我沒有配置openSSH和openSSL,執行curl命令的時候一直提示以下錯誤資

工資管理系統c#SQL Server

表的建立: Create table Usemen ( 使用者 nchar(10)primary key, 密碼 nchar(10)not null, 性別 nchar(3)not null, 年齡 int notnull, 員工號 nchar(10)not null, 職位 n

ubuntu開發板連線基本配置

一、虛擬機器中ubuntu網路配置 1,開啟你windows端的網路介面卡,啟動VM的兩個虛擬網絡卡 2,設定你的虛擬機器是橋接模式,複製物理的狀態 3,你一定要獲取或者切換root許可權 sudo -s 或者是sudo su 4,更改你的ubunt

安裝SQL server2008教程常見問題的解決

安裝SQL不是和安裝普通軟體那麼簡單,特別是對於新手來說。安裝SQL,需要做一定的配置,即使有過安裝經驗也會被不知名的錯誤折磨到頭大。本文主要對網上看到安裝中出現的常見問題和解決方法整理和彙總,希望能夠對你有所幫助(本文引用內容皆指出來源,感謝相關連結原創作者) SQLs

遠端伺服器:PHP5.5+apache2.4+SQL SERVER2008開發環境配置

在努力了一個星期後終於在伺服器配置上了PHP環境,因為資料庫是SQL SERVER,網上的大多數是php+MySQL+apache的教程而且是PHP5.2.x和apahce2.2.x的,所以在配置的過程中也遇到了不少的麻煩,這裡總結幾點經驗. 首先,我是分別獨立安裝a

VSSQL Server連線時出現(provider: TCP Provider, error: 0)錯誤時的解決方法

     由於本人在做Visual studio與SQL Server資料庫連線時,總是出現如圖所示的問題。為了防止大家也有同樣問題的困擾,寫下我的解決方法。                                                      第一

SQL Server2008連線錯誤'233',幫你解決

連線SQL Server2008時出現錯誤提示:已經成功與伺服器建立連線,但是在登入過程中發生錯誤。(Provider:命名管道提供程式,error:0-管道的另一端上無任何過程。)(Microsoft SQL Server,錯誤:233)。 <pre style=

在VS2013下c++Sqlite3的連線

第一步:       在vs2013下建立一個空的win32工程SQLite3Test,在工程的屬性-連結-輸入中新增sqlite3.lib的引用。新增新的檔案main.cpp,寫一個main函式,並編譯一下。好,接下來把sqlite3.h/def/exp/lib通通放進SQ

在VS2010下c++Sqlite3的連線

SQLite並沒有一次性做到位,只有下載這些東西是不能放在vs2010中並馬上使用的,下載下來的檔案中有sqlite3.c/h/dll/def,還是不夠用的。我們需要的sqlite3.lib檔案並不在其中,需要我們自己動手了。 這兒要用到visual studio提供的Vi

關於C#Delphi DLL呼叫回撥問題注意事項

1.Delphi封裝的函式API及定義的函式型別(用於回撥)中引數的修飾關鍵詞盡不使用const 2.Delphi封裝的函式API及定義的函式型別(用於回撥)中引數的修飾關鍵詞使用const,對應C#中申明需帶ref 3.Delphi封裝的函式API及定義的函式型別(用於回

C#SQL Server儲存過程之一(建立):使用C#建立SQL Server的儲存過程

  通常,開發人員使用的是T-SQL來建立SQL Server的儲存過程、函式和觸發器。而現在的SQL Server 2005已經完全支援.NET通用語言執行時(CLR)了。這就意味著,你可以使用.NET的語言,如C#、VB.NET之類的來開發SQL Server的儲存過程、

JDBC(一)之SQL Server的連線配置方法

PS:文中所用SQL Server版本為2008一、SQL Server準備工作1.配置例項的登入驗證方式    右擊 例項,選擇 屬性    單擊 安全性,選擇 SQL Server和Windows身

C#窗體SQL資料庫的連線

/*通過C#winform程式訪問資料庫資料 用到的名稱空間和變數型別: using System.Data.SqlClient; SqlConnection;資料庫連線類 SqlCommand;資料庫操作類 SqlDataReader:讀取 */ //登入按鈕程式碼

Window XP 環境下SQL Server2008區域網連線配置

資料庫配置步驟如下: 1.如果安裝的時候 已經選擇 “混合模式(SQL Server 身份驗證和Windows 身份驗證)(M)”, 並且已經為 SQL Server 系統管理員分配了賬戶和密碼 則不用重新配置。  配置方法如下:        用Windows 驗證方法