关于VC访问数据库日期查询的问题!

csucr 2006-08-11 03:57:52
大家好,我在编写边vc通过ADO访问Access数据库程序时,想通过自己输入的CSting类型的日期,查询数据库中的数据。
定义:CString Date=2006-8-11;
查询语句:
m_pRecordset->Open("SELECT * FROM DemoTable where Date=#strPDate# ",
theApp.m_pConnection.GetInterfacePtr(),
adOpenDynamic,
adLockOptimistic,
adCmdText);
语句没有错误,但是无法运行,总是报错,我想是SQL语句无法识别CString类型,我应该怎么做啊!谢谢!
...全文
185 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
csucr 2006-08-14
  • 打赏
  • 举报
回复
谢谢,毛毛了!
csucr 2006-08-12
  • 打赏
  • 举报
回复
呵,自己解决了,改成
m_pRecordset->Open( _bstr_t(str1),
theApp.m_pConnection.GetInterfacePtr(), adOpenDynamic,
adLockOptimistic,
adCmdText);
就行了.
有没有什么字符串方面格式化方面的详细资料,即介绍了字符串的使用范围又介绍了格式化方面的详细知识的,大家给我介绍下吧,不胜感激啊!
csucr 2006-08-12
  • 打赏
  • 举报
回复
我按照一楼的做了,但是有错误:
error C2065: '_b_str' : undeclared identifier
这是怎么回事呢?
有没有什么字符串方面格式化方面的详细资料,即介绍了字符串的使用范围又介绍了格式化方面的详细知识的,大家给我介绍下吧,不胜感激啊!
csucr 2006-08-12
  • 打赏
  • 举报
回复
呵呵,本人初学VC,向大家学习!
handsomerun 2006-08-12
  • 打赏
  • 举报
回复
哈哈,是我搞错了,应该是_bstr_t

关于格式话………………

去msdn看看CString 的format,或者看看sprintf的使用
trueadou 2006-08-11
  • 打赏
  • 举报
回复
ACCESS是用#号的吗,我只知道SQL SERVER是用单引号的!!!
wzh0591 2006-08-11
  • 打赏
  • 举报
回复
楼上的正解。楼主,你在字符串方面格式化方面还是要下点苦功的呀
handsomerun 2006-08-11
  • 打赏
  • 举报
回复
CString strDate= "2006-8-11";

CString strsql;

strsql.Format("SELECT * FROM DemoTable where Date=#%s#",strDate);

m_pRecordset->Open(_b_str(strsql),
theApp.m_pConnection.GetInterfacePtr(),
adOpenDynamic,
adLockOptimistic,
adCmdText);

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧