收录日期:2018/10/21 01:34:14 时间:2016/05/22 08:21:50 标签:Access
我用ODBC来实现VC对一个Access小数据库的操作,这个小数据库里面有一张表叫MyTable,表中有两个字段ID,Time,其中Time表示时间,是有年月日小时分钟的那种比较长的时间就像这种2003-10-29 19:44:57。我用ClassWizard产生一个派生于CRecordset的类,名字叫CMyRecordset,通过ClassWizard可以自动在CMyRecordset中产生两个成员变量m_ID,m_Time,这两个变量与表中的两个字段相对应。我可以使用这两个变量来修改、添加、删除表的操作,已经成功。

我对CMyRecordset产生一个对象就叫myRecordset,因为myRecordset已经与表MyTable连上了,那么myRecordset的成员m_ID,m_Time就可以访问表了,事实上我通过这两个成员变量已经成功对表进行添加删除了,比如
myRecordse.AddNew();
myRecordse. m_ID=5;
myRecordse.m_Time=某时间;
myRecordse.Update();//这样就成功了

但,我想在VC中使用一些简单的SQL语句来实现一些特定的操作,我用CTime来获得系统时间叫MyCurTime。我人为给定一个ID值,希望能在表中查找符合这样条件的记录,这个记录的ID字段值与我给的一样,同时这个记录的Time字段与系统时间MyCurTime在同一天上,只要找到符合一条记录就可以,没有必要找到所有符合条件的。该如何做?
现在我可以这样:
int n;
CString str;
n=5;//这个5是自己给定的
str.Format("ID=%d",n);
myRecordse. m_strFilter=str;
myRecordse. Requery();//这样是可以查到一条记录
但,关于由CTime得到的当前时间MyCurTime,与数据库中的Time字段的值比较,就不会写了。我想要的是MyCurTime与数据库中的Time只要在同一天就可以了。比如对于ID我可以str.Format("ID=%d",n);对于时间该如何写?
你可以使用jet sql+ ODBC标量函数解决,具体的内容不在ACCESS 讨论范围,你可以去查一下ODBC的资料

我提供给你几个函数

MONTH 、YEAR 、DAYOFYEAR

ado的模糊搜索。用什么显示出搜索到的记录比较好。还有高亮显示。有点晕。 ACCESS SQL 查询语句的简化。请高人帮忙 关于jsp页面内调用bean的问题~~~~急~~~ C++ Builder中怎么用ADO或BDE连接SQLite数据库? 一个问题 DataGrid的问题 求助:JAVA窗口切换面板,实现不同的界面 C++ Builder中怎么用ADO或BDE连接SQLite数据库??? 白屏是怎么回事? 大型零售商业MIS的服务器选小型机还是PC服务器? 请教一个关于IIS配置的问题 SQL的问题~~关于多表连查的,,急求解决!!谢谢各位了~~ 高手过来帮我看看这段程序 急! *****sleep期间执行其他代码***********急!!! spread 中 checkbox的状态如何读取。 xml文档的问题` 新手弱弱地问:在Visual C#中如何添加一个Dll文件的引用? pb调用vc动态库函数问题 用VB怎么实现运筹学中运输问题的算法 报错“Server Error in \'/\' Application.” 高手帮忙解决一下,看得小弟头痛啊! 尋找合作者,可付薪水,深圳 求 2003 转换 2005 XML 出问题 请问c语言里的代码可否能在c++中运行? 除了用web.config里Forms角色验证的方法外,还有什么方法限制别人访问某些文件夹??? windows mobile 是不是不支持屏保啊? Bitblt为什么失败 你们个人接过别人的项目吗?哪里可以接啊, VC+ADO+SQLSERVER,慢? Struts的Action出空白页面