1)DBNETLIB][ConnectionOpen (Connect()).]SQL Server 不存在或拒絕訪問
解決辦法:
1、開啟SQL Server Configuration Manager -> SQL Server2008 網路設定-> MSSQLSERVER的協議->TCP/IP
2、按右鍵啟動TCP/IP
3、雙擊進入屬性,把IP地址中的IP all中的TCP連接埠設定為1433
4、重新啟動SQL Server 2008服務
2)SQL Server ODBC資料來源 串連失敗問題 無效的串連
串連失敗:
SQLState:'01000'
SQL Server 錯誤:14
[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen(Invalid Instance()).
串連失敗:
SQLState:'08001'
SQL Server 錯誤:14
[Microsoft][ODBC SQL Server Driver][DBNETLIB]無效的串連.
解決方式:
啟動服務:SQL Server Browser和SQL Server VSS Writer
(3)
_ConnectionPtr:是vc用ADO開發資料庫時的串連
_RecordsetPtr:是vc用ADO開發資料庫時的紀錄集
CRecordset:是vc用ODBC開發資料庫的紀錄集
CDatabase:是vc用ODBC開發資料庫的串連
(4安裝或卸載SQL Server遇到錯誤提示:以前的某個程式安裝已在安裝電腦上建立掛起的檔案操作。運行安裝程式之前必須重新啟動電腦(安裝程式支援規則)。
解決辦法:
1、在開始->運行中輸入regedit(登錄編輯程式)
2、到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\
3、在右邊視窗右擊PendingFileRenameOperations,選擇刪除,然後確認。
4、重新安裝,問題解決(如果沒解決就是別的什麼問題了)。
(5)此電腦上安裝了 Microsoft Visual Studio 2008 的早期版本。
請在安裝 SQL Server 2008 前將 Microsoft Visual Studio 2008 升級到 SP1。Visual Studio SP1 可在http://go.microsoft.com/fwlink/?LinkId=159627
找到。
(6)SQL 匯出資料庫時,要在任務->分離裡面將資料庫分離,然後再將.mdf;.ldf檔案copy給別人使用,不然直接將沒有分離的資料庫給別人使用,會出現附加資料時,報錯:
(7)卸載sql 2008 時,提示錯誤:
SQL Server 安裝程式失敗。SQL Server 安裝程式遇到以下錯誤:
在建立視窗控制代碼之前,不能在控制項上調用InVoke或BeginInVoke。。
解決方案和第4條類似!
(8)效能計數器註冊表登錄區一致性 失敗
http://www.cnblogs.com/bigboo/archive/2008/09/30/1302483.html
(9)SQL 查詢分析器如何注釋代碼
當行 --
多行 /* */
(10)如何擷取SQL 2008 資料庫中的資料,轉換成CString類型;
首先將 _variant_t 類型的變數,轉換成字串,
_variant_t var;
CString str; //轉換以後的字串
//以下代碼示範如何轉換為C標準字串型
if (var.vt == VT_I4)
{
long lNum;
char szCh[21];
str=var.bstrVal;
WideCharToMultiByte
(CP_ACP, 0, var.bstrVal, -1,
szCh, sizeof(szCh), NULL, NULL);
}
//以下代碼示範如何轉換成邏輯型
if( var.vt == VT_BOOL)
{
BOOL bVar;
lNum=var.lVal;
bVar= var.boolVar==0? FALSE : TRUE;
}
//以下代碼示範為其餘類型(補充)
switch(var.vt)
{
case VT_BSTR: //var is BSTR type
str=var.bstrVal;
break;
case VT_I2: //var is short int type
str.Format("%d",(int)var.iVal);
break;
case VT_I4: //var is long int type
str.Format("%d",var.lVal);
break;
case VT_R4: //var is float type
str.Format("%10.6f",(double)var.fltVal);
break;
case VT_R8: //var is double type
str.Format("%10.6f",var.dblVal);
break;
case VT_CY: //var is CY type
str=COleCurrency(var).Format();
break;
case VT_DATE: //var is DATE type
str=COleDateTime(var).Format();
break;
case VT_BOOL: //var is VARIANT_BOOL
str= (var.boolVal==0) ?"FALSE": "TRUE";
break;
default:
str.Format("Unk type %d\n",var.vt);
TRACE("Unknown type %d\n",var.vt);
}
具體舉例如下:
_variant_t var = m_pRecordOut->GetCollect((_variant_t)strCol); //strCol 為資料庫中的一個欄位
if (var.vt==VT_DATE)
{
CString str=COleDateTime(var).Format();
}
(11)DateTime和CString相互轉換
CString strCString;
strCString=Y+"-"+M+"-"+D+" "+H+":"+m+":"+S;
COleVariant vtime(strCString);
vtime.ChangeType(VT_DATE);
COleDateTime datetime=vtime;
COleDateTime datetime=COleDateTime::GetCurrentTime();
CString tempTime;
tempTime=datetime.Format("%Y-%m-%d %H:%M:%S");
(12)datatime 類型模糊查詢
SELECT * FROM T WHERE Convert(varchar,sendTime,120) LIKE '2012-08-18 14:49%'
其中:T為資料庫的表,sendTime是資料庫中的時間欄位的欄位名。這樣就可以查詢2012-08-18 14:49的記錄。
(13)登陸時出現:已成功與伺服器建立串連,但是在登入過程中發生錯誤。 (provider: 共用記憶體提供者, error: 0 - 管道的另一端上無任何進程。)
首先選中伺服器(右鍵)->屬性->安全性->伺服器身分識別驗證修改為"SQL SERVER和WINDOWS身分識別驗證模式"
其次展開伺服器上的"安全性"->登陸名->選中SA登陸帳號(右鍵)->狀態->登陸修改為啟用
(14)Microsoft SQL Server錯誤233的解決辦法:
已成功與伺服器建立串連,但是在登入過程中發生錯誤。(provider:具名管道提供者,error:0-管道的另一端上無任何進程。)(Microsoft SQL Server,錯誤:233)
解決方案:開啟“開始—所有程式—Microsoft SQL Server 2005 —組態工具—SQL Server 組態管理員”,在彈出的表單中,找到“SQL Server 2005 網路設定”,把“MSSQLSERVER的協議”下的“Named Pipes”和“TCP/IP”啟用,然後重新啟動SQL Server 即可。