好吧.. 考虑到 SELECT 权限被拒绝错误以及难以涉足所有“您需要在您的表上授予选择权限...”响应,这尤其棘手。但是,我们已经尝试了几个帐户,其中一个具有 db 所有者权限,并且确实可以确认 SELECT 有效。
服务器本身是 2008 R2,带有 2 个 DB。一个是在SQL 2000 兼容模式下运行,并且使用 MFC 连接到该数据库可以正常工作。
第二个是2008兼容模式,无论我们使用哪个用户登录,或者我们尝试访问哪个表,我们都会收到“对象'TABLE',数据库'db',模式'dbo'的SELECT权限被拒绝。游标未声明”
我们使用的连接字符串是:
m_TABLENAME.OpenEx(_T("Driver={SQL Server};Server=0.0.0.0\\instance;Database=db;User=user;Password=password;"), CDatabase::noOdbcDialog)
这是使用 Visual Studio 2010,开发站是 Windows XP,但我们也将可执行文件复制到 Win7 机器并收到相同的错误。