关于ADO2连接SQL2008。解决办法

关于ADO2连接SQL2008。
    之前做项目用的MYSQL,客户喜欢MSSQL,所以要换成SQL2008。
    之前用ADO2连接数据库。本以为改一下连接字串就KO。谁知不行。杯具啊。
    那个大牛帮我看看那里有问题啊!或者告诉我该怎么解决啊!

Ado2版本
//
//  MODULE: Ado2.h
//
// AUTHOR: Carlos Antollini 
//
//  mailto: cantollini@hotmail.com
//
// Date: 07/02/2003
//
// Version 2.10
// 



连接字串

strConnection.Format(_T("Provider=SQLOLEDB.1;\
Data Source=LBWIN7\\SQLEXPRESS;\
database=XX;\
Persist Security Info=False;\
Initial Catalog=MSSQL;\
uid=sa;\
pwd=XX"));


查询

m_strSQL.Format(
_T("select client_id as id,\
   client_name as name,\
   client_address as address,\
   client_country as country,\
   client_region as region,\
   client_city as city\
   from Client"));



用try获得的错误提示
CADORecordset Error
    Code = 80040e37
    Code meaning = IDispatch error #3127
    Source = Microsoft OLE DB Provider for SQL Server
    Description = 对象名 'Client' 无效


但表确实已经建立了,而且是有数据的。

------解决方案--------------------
强烈建议用Ado助手调试一下。下面是调试通过的strConnection

("Provider=SQLOLEDB.1;Password=123456;Persist Security Info=True;User ID=sa;Initial Catalog=PersonManager;Data Source=KISSTEA-PC\\SQLEXPRESS","","",adModeUnknown)

------解决方案--------------------
SQL sever你要先配一下那个权限啊
也有点小复杂
------解决方案--------------------
你的sql语句看是否可以在数据库中执行
------解决方案--------------------
引用:


你很热心,但从LZ描述,应不是用户权限问题
LZ用了sa用户,应该没问题,
报了“对象名 'Client' 无效”,Connection是Open成功的
问题在于连接字符串,
database=XX;和Initial Catalog=MSSQL;重复了
而且Initial Catalog=MSSQL;可能指定了一个错误的数据库名
可改为Initial Catalog=XX; (XX和database=XX的XX一样的值),删掉database=XX;
或者删掉Initial Catalog=MSSQL;
------解决方案--------------------
strConnection.Format(_T("Provider=SQLOLEDB.1;\
                            Data Source=LBWIN7\\SQLEXPRESS;\
                            database=XX;\
                            Persist Security Info=False;\
                            Initial Catalog=MSSQL;\
                            uid=sa;\
                            pwd=XX"));
楼主你的字符串错了。
database
和initial catalog 都是指数据库的。

------解决方案--------------------
我后来又仔细看了一下他的字串,发现是用的express版的
这个Initial Catalog后面是要接他要连的数据库的,这里应该有点问题
引用:
引用:



你很热心,但从LZ描述,应不是用户权限问题
LZ用了sa用户,应该没问题,
报了“对象名 'Client' 无效”,Connection是Open成功的
问题在于连接字符串,
database=XX;和Initial Catalog=MSSQL;重复了
而且Initial Catalog=MSSQL;可能指定了一个错误的数据库名
可改为Initia……