直接使用CRecordset,不使用CRecordset的派生类

简介: 直接使用CRecordset,不使用CRecordset的派生类

Win7+VS2005

 

实例:

CDatabase db;
 bool b = db.Open("SysLog");//假定数据源已经建立
 CRecordset rs(&db); 
 b = rs.Open(CRecordset::forwardOnly,"select * from \"EventLog\" " );//成功
 CStringA str;
 rs.GetFieldValue((short)0,str);
 rs.Close();
 db.Close();

注意:

CDatabase db;
 bool b = db.Open("SysLog");//假定数据源已经建立
 CRecordset rs(&db);
 //b = rs.Open(AFX_DB_USE_DEFAULT_TYPE,"select * from \"EventLog\" " );//异常
 b = rs.Open(CRecordset::forwardOnly,"select * from \"EventLog\" " );//成功
 //b = rs.Open(CRecordset::forwardOnly," select * from \"EventLog\" " );//报错
 rs.Close();
 db.Close();


相关文章
|
1月前
|
编译器 C++
纯虚函数和虚函数
纯虚函数和虚函数
10 0
|
7月前
|
C++
38.【C++ 虚函数 纯虚函数 虚基类 (最全详解)】(一)
38.【C++ 虚函数 纯虚函数 虚基类 (最全详解)】
29 0
|
8月前
|
编译器 C++
C++的基类和派生类构造函数
基类的成员函数可以被继承,可以通过派生类的对象访问,但这仅仅指的是普通的成员函数,类的构造函数不能被继承。构造函数不能被继承是有道理的,因为即使继承了,它的名字和派生类的名字也不一样,不能成为派生类的构造函数,当然更不能成为普通的成员函数。 在设计派生类时,对继承过来的成员变量的初始化工作也要由派生类的构造函数完成,但是大部分基类都有 private 属性的成员变量,它们在派生类中无法访问,更不能使用派生类的构造函数来初始化。 这种矛盾在C++继承中是普遍存在的,解决这个问题的思路是:在派生类的构造函数中调用基类的构造函数。 下面的例子展示了如何在派生类的构造函数中调用基类的构造函数:
48 0
|
7月前
|
安全 Java 编译器
C++将派生类赋值给基类
在 C/C++ 中经常会发生数据类型的转换,例如将 int 类型的数据赋值给 float 类型的变量时,编译器会先把 int 类型的数据转换为 float 类型再赋值;反过来,float 类型的数据在经过类型转换后也可以赋值给 int 类型的变量。 数据类型转换的前提是,编译器知道如何对数据进行取舍。例如: int a = 10.9; printf("%d\n", a); 输出结果为 10,编译器会将小数部分直接丢掉(不是四舍五入)。再如: float b = 10; printf("%f\n", b); 输出结果为 10.000000,编译器会自动添
103 0
|
7月前
|
C++
38.【C++ 虚函数 纯虚函数 虚基类 (最全详解)】(二)
38.【C++ 虚函数 纯虚函数 虚基类 (最全详解)】
52 0
|
3月前
|
存储 Unix 编译器
C++中虚函数和纯虚函数的问题总结
C++中虚函数和纯虚函数的问题总结
50 0
|
9月前
|
C++
<c++> 类的继承 | 基类与派生类 | 构造函数与析构函数
<c++> 类的继承 | 基类与派生类 | 构造函数与析构函数
96 0
|
10月前
|
C++
基于C/C++将派生类赋值给基类的详细讲解
基于C/C++将派生类赋值给基类的详细讲解
|
11月前
|
C++
基类派生类多态虚函数?
通常在层次关系的根部有一个基类,其他类则直接或间接的从基类继承而来,这些继承得到的类称为派生类。基类负责定义在层次关系中所有类共同拥有的成员,而每个派生类定义各自特有的成员。
93 0
|
11月前
|
C++
虚函数,虚析构函数,纯虚函数,抽象类
🐰虚函数 🌸虚函数的定义和作用 🌸虚函数的注意事项 🐰虚析构函数 🐰 纯虚函数 🐰抽象类