ACCESS数据库改变数据库中表的问题? ACCESS数据库中有几个表,我想对其中的几个表进行查询,并将结果输出,每次只查寻其中一个表,但是,请问如何对单独的一个表进行操作呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 一个CRecordSet对应一个表,用添加新类的方法来对应。 楼上的这个方法好象不行,一个数据库只能用一个CRecordSet打开,CRecordSet 的对象可以打开一个数据库中的任何一个表,要分别打开每个表来取其中的数据. 一个CRecordSet对应一个表,太麻烦了。表多了就要好多类。我认为这样好象不行,别人还有没有更好的办法,高手请侃侃! 一个数据库中的所有的表只能用一个记录指针打开,我试过好象是这样.如果表中索引一致.你只要用变量保存下你找到的记录的位置,然后再用这个指针打开其它的表Move(???)到同的位置就可以操作了.也许还有其它更好的办法.关注中! sqlstr = "SELECT 材料名称.* FROM 材料名称 where 材料名称='1'"; pDoc->m_kuSet.Open(AFX_DB_USE_DEFAULT_TYPE,sqlstr); pDoc->mdb.ExecuteSQL(sqlstr);/////////////////////MSDN 中virtual BOOL Open( UINT nOpenType = AFX_DB_USE_DEFAULT_TYPE, LPCTSTR lpszSQL = NULL, DWORD dwOptions = none );throw( CDBException, CMemoryException ); 这样解释。 nOpenType 究竟该用什么呢?CRecordset::dynaset CRecordset::dynamic 我试过都不行,那么怎么“用SQL语句打开记录集” CString strSQL(_T"SELECT 材料名称.* FROM 材料名称 where 材料名称='1'"));m_pRecordset->Open(CRecordset::dynaset,strSQL); 我用的是access数据库,CString strSQL(_T"SELECT 材料名称.* FROM 材料名称 where 材料名称='1'"));m_pRecordset->Open(CRecordset::dynaset,strSQL);它提示odbc驱动程序不支持动态记录集,什么原因啊 你在新建CRecordset类的时候选择Record type 是不是选择了Snapshot(快照集)啊?重新新建这个类试一下,注意这一点.我这么用没问题.或者ODBC不支持动态记录集你在生成CRecordset的时候就选择Snapshot 试一下.我没遇到过这样的问题,如果有结果也请告诉我一声. 或者 m_pRecordset->Open(CRecordset::snapshot,strSQL); qly2010(晨曦) ( ) 你好,谢谢你的回答 ,但是,结果还是提示odbc驱动程序不支持动态记录集,不知究竟是什么原因,我新建了一个CRecordset类选择了dynaset,我下次打开时用m_pRecordset->Open(); 它都提示odbc驱动程序不支持动态记录集。太怪了,不知是不是机子的原因,我在俩台机子上都出错。 不知有没有高手知道为什么? 如果你的程序不大也不保密请把代码给我,我帮你看一下[email protected] 怎么连接的?用OLE DB吧,为什么用ODBC呢?m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\table1.mdb","","",adModeUnknown); 子窗体(WS_CHILD)中如何获得WM_CHAR消息? 画刷实现文本着色 检测应用程序是否具有管理员权限 如何建立一个全局的控件变量? 有那些书对发MFC自定义控件讲的好点的 设置属性页尺寸再次提问,现在总共发了220分,不够再添 请教:CListCtrl不能显示中文???? 一个初学DCOM的痛苦经历! 哪里有opengl1.2或1.3的开发包? 只好再问一遍了,谢谢。好象方法是正确的,可运行会出错。 不知道谁有这样一种东西? 在ODBC基于对话框里该怎样定义CRecordset和CDatabase?谢谢。。
pDoc->m_kuSet.Open(AFX_DB_USE_DEFAULT_TYPE,sqlstr);
pDoc->mdb.ExecuteSQL(sqlstr);
/////////////////////MSDN 中
virtual BOOL Open( UINT nOpenType = AFX_DB_USE_DEFAULT_TYPE, LPCTSTR lpszSQL = NULL, DWORD dwOptions = none );
throw( CDBException, CMemoryException ); 这样解释。
nOpenType 究竟该用什么呢?CRecordset::dynaset CRecordset::dynamic 我试过都不行,那么怎么“用SQL语句打开记录集”
CString strSQL(_T"SELECT 材料名称.* FROM 材料名称 where 材料名称='1'"));m_pRecordset->Open(CRecordset::dynaset,strSQL);它提示odbc驱动程序不支持动态记录集,什么原因啊
不知有没有高手知道为什么?
m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\table1.mdb","","",adModeUnknown);