JUST DO IT ~

          我只想當個程序員

          c++ connect ms sql server sqlapi++ 連接配置 解決登錄失敗問題.

          2015/3/10

          這幾天遇到一點問題,無法訪問ms sql server .

          需要注意幾個問題.

          1.ms sql 的配置

          安裝了 sql- server2005 express ,安裝默認會關閉網絡連接的等.需要打開ip:1433端口.

          賬戶密碼需要使用,ms sql–server 登錄登錄.

          2.sqlapi 的使用.

          4.0.3 版本缺省使用odbc

          Starting from version 4.0.3 SQLAPI++ Library uses ODBC as default API when working with SQL Server. If for some reason you want to use OLE DB or DB-Library, you should set "UseAPI" connection option before specifying SQL Server client or connecting to database:

          SAConnection con;
          con.setOption( "UseAPI" ) = "DB-Library";
          con.setClient( SA_SQLServer_Client );
          con.Connect(...);

           

          3. 解決  18456  問題解析.

            

          第一部分 數據庫配置

          sql-server 2005 安裝.

          sql-server 2005 management stduio express .微軟這些都是免費的.

          連接串:

          AP-CHN-LP140098\SQL2005EXPRESS

          .\SQL2005EXPRESS

          127.0.0.1\SQL2005EXPRESS


          錯誤代碼:

          28000 [Microsoft][SQL Server Native Client 10.0][SQL Server]?? ' ' ?????

          實際原因是
          sqlapi 4.0.1 

          1     SAConnection con;
          2     con.setOption( "UseAPI" ) = "ODBC";
          3     SACommand cmd(&con,"select 1   "); 
          4     try
          5     {
          6       con.Connect(dbname,name,pwd,SA_SQLServer_Client);
          7       cmd.Execute();

          注釋掉 con.setOption( "UseAPI" ) = "ODBC";  就解決了。

          錯誤的格式串:

          42000 ????????????? "tcp:127.0.0.1\SQL2005EXPRESS,1433"??????
          28000 ?? 'vip' ?????


          42000 ????????????? "127.0.0.1\SQL2005EXPRESS"??????
          28000 ?? 'vip' ?????


          正確的sqlapi ++  ms sql server 串 

           char * dbname = "127.0.0.1\\SQL2005EXPRESS@master"; 




          請參考 : 

          http://www.sqlapi.com/ServerSpecific/SQLServer_OleDb.html#Connecting%20to%20a%20database

           

          image

           

          image

           

           

          image

           

          image

           

           

          如果這里下面這個服務無法顯示, 可能是 sql2013localdb 造成的卸載掉就ok了.

          image

          啟動然后端口都開成1433 ,64bit 和32bit都是用這個設置 allip

          image

           

          image

           

          image

            

          第二部分 sqlapi 代碼

           

          我在sqlapi中連接串:

          127.0.0.1\SQL2005EXPRESS@DaZong

          注意是如果是string 里面的 \\ 代表 \

           

           

          第三部分 登錄失敗跟蹤

          1.請設置登錄失敗到日志.  ms sql server logon  18456 error

          image

           

          C:\Program Files (x86)\Microsoft SQL Server\MSSQL.1\MSSQL\LOG

           

          image

          注意這里是 狀態 8 :

          清查表:

           

          ERROR STATE

          ERROR DESCRIPTION

          2 and 5

          Invalid userid

          6

          Attempt to use a Windows login name with SQL Authentication

          7

          Login disabled and password mismatch

          8

          Password mismatch

          9

          Invalid password

          11 and 12

          Valid login but server access failure

          13

          SQL Server service paused

          18

          Change password required

           

          參考 :

          http://blogs.msdn.com/b/sql_protocols/archive/2006/02/21/536201.aspx

          posted on 2015-03-10 17:19 小高 閱讀(1122) 評論(0)  編輯  收藏 所屬分類: C

          導航

          <2015年3月>
          22232425262728
          1234567
          891011121314
          15161718192021
          22232425262728
          2930311234

          統計

          常用鏈接

          留言簿(3)

          隨筆分類(352)

          收藏夾(19)

          關注的blog

          手冊

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 施甸县| 汶川县| 彭泽县| 沂源县| 龙井市| 临猗县| 西安市| 荥经县| 新巴尔虎左旗| 乐清市| 周至县| 咸阳市| 旌德县| 来宾市| 新绛县| 贵溪市| 涪陵区| 恩平市| 双桥区| 高州市| 增城市| 星子县| 依安县| 莱阳市| 湖口县| 天镇县| 邯郸市| 青铜峡市| 桃园市| 金川县| 平潭县| 都匀市| 茂名市| 印江| 梧州市| 石柱| 获嘉县| 离岛区| 柳河县| 徐闻县| 错那县|