我用VC6通过ODBC连到SQL Server 7.0,读取可以,可是在写入时出错。
是不是用户权限问题,我已经把这个用户设置为public而且对要操作的表具有
update,delete等权限。
程序流程大致如下
select top 10 * from table1
while not eof
{
msg=rsr->msg; if msg的长度>0
{
rsr.edit();
rsr->send=1;
rsr.update()
}
rsr->movenext();
}
代码太长,大致意思是这样的,在msg的长度大于时,居然写入会出错
是不是用户权限问题,我已经把这个用户设置为public而且对要操作的表具有
update,delete等权限。
程序流程大致如下
select top 10 * from table1
while not eof
{
msg=rsr->msg; if msg的长度>0
{
rsr.edit();
rsr->send=1;
rsr.update()
}
rsr->movenext();
}
代码太长,大致意思是这样的,在msg的长度大于时,居然写入会出错
解决方案 »
- 各位大侠,哪位有研究过MSN的表情、图释文件的格式啊? 那些后缀名为id2的文件是什么格式的呢?
- 紧急求助!!!!!字符串分割的
- 关于 treeview 树控件
- 复制表数据效率问题
- 弹出MessageBox后的焦点问题。
- 用VC ADO操作ACCESS数据库,请问如何用程序语句实现给ACCESS数据库设置密码呢?
- 我从网上下的.icl的图标,可打不开,怎么用啊?
- 关于套接字的问题!
- c++中非常简单的定义问题,在线等待。。。
- 请各位高手帮忙!如何实现对任意对象的任意拖拉
- win2k advanced server 下面,音频和视频播放时,声音和画面非常快。
- 一般软件BETA版是怎么做过期判断的,时间放在哪儿安全?
TRUE if you intend the connection to be read-only and to prohibit updates to the data source. All dependent recordsets inherit this attribute. The default value is FALSE
spdb.OpenEx(_T("DRIVER=SQL Server;UID=yuanying;PWD=a123b123;SERVER=sql7"),0);
CSendRecordset* srs=new CSendRecordset(&spdb);
srs->Open(AFX_DB_USE_DEFAULT_TYPE,_T("Select top 1 * from send_tb where send_ok>0"));
这样会不会有问题呀
你在前面加上
while not bof
{
rsr->movefirst();
}
试试看吧
你在安装SQL Server时不要选window用户登陆,它是默认的。按你自己的用户名和密码登陆也就是 UID=yuanying;PWD=a123b123
是的,我的yuanying是正常的SQL帐号,查询时是正常的
http://www.csdn.net/expert/topic/862/862682.xml?temp=.4818842
http://www.csdn.net/expert/topic/862/862682.xml?temp=.4818842
srs->Open(AFX_DB_USE_DEFAULT_TYPE,_T("Select top 1 * from send_tb where send_ok>0"));打开
这个是什么意思,
这个AFX_DB_USE_DEFAULT_TYPE和CRecordSet::dynadoc有什么区别,
我用::dynadoc打开也是只能select 不能edit和update
我以前说好使是在SQL7.0+vc6+win2000下
现在则是在SQl 2000+VC6+win2000下编译,然后要用在Win2000+SQL7环境
会不会是这里的问题
CRecordset::dynaset
也都是老样子