MFC ODBC数据库开发技术(续)

来源:互联网 发布:直销网络图软件 编辑:程序博客网 时间:2024/05/20 02:52
 

1.查询记录

   使用CRecordset类从数据源中提取记录集,并对记录集进行操作。如果查询的记录是多条的,可以利用CRecordset类的Move,MoveNext,MovePrev,MoveFirst,MoveLast方法移动记录到指定的位置。

在操作记录集之前,需要定义一个CRecordset类对象,并传入CDatabase类的指针,方法如下:

CRecordset rs(&m_db);

或者

CRecordset rs;

rs.m_pDatabase=&m_db;

然后调用CRecordset的Open方法打开记录集,函数原型如下:

virtual BOOL Open( UINT nOpenType = AFX_DB_USE_DEFAULT_TYPE, LPCTSTRlpszSQL = NULL, DWORD dwOptions = none );
throw( CDBException
, CMemoryException );

其中nOpenType是记录集打开的方式,包括dynaset,snapshot,dynamic和forwardonly。lpsaSQL是打开记录集的SQL语句,也可以是一个表名或一个存储过程。

可以用IsEOF()方法判断记录集是否到达末尾。CDBVariant是MFC ODBC中一个处理数据库的变量类型类,使用GetFieldValue函数来获取字段的值,能方便地存取数据而不用考虑数据类型的转换。

2.添加记录

只需构造添加新记录的SQL语句,然后调用CDatabase类的ExecuteSQL方法执行SQL语句,就能添加新记录到数据库中。

例:

CString sql="insert into car_info_tab(brand,color,manufacturer)"

                    "value('QQ','red','chery')";

m_db.ExecuteSQL(sql);

3.修改、删除记录

与添加记录类似,只需构造相应的SQL语句,调用CDatabase的ExecuteSQL方法即可。

如修改记录的SQL语句:

CString sql="update car_info_tab"

                    "set brand='QQ'"

                   "where id=1";

删除记录的SQL语句:

CString sql="delete from car_info_tab where id=1";

原创粉丝点击