前提是最基本的数据操作层已经有了,如:exec(CString sql)函数可以直接执行sql语句
例如现在定义了这样的一个对象
class A
{
public:
A();
virtual ~A();
protected:
int m_id;
CString m_name;
double m_hight;
double m_width;
}
然后再定义一个类来对上面的类的属性进行数据库的操作
class DalA
{
public:
DalA();
virtual ~DalA();
public:
bool Insert(A* a);
bool GetModel(A* a,int id);
}
在主函数中
int main()
{
A *a=new A();
a->m_id=4;
a->m_hight=1.256;//这里只给两个属性赋值
DalA *dala=new DalA();
dala->Insert(a);
return 0;
}
插入数据库后要求这样的效果
id name hight width
4 null 1.256 null
1.A中的属性怎么初始化?
如:可以给数值型的赋0,给字符串赋_T("")2.Insert(A* a);怎么实现,提供思路即可。反过来。用bool GetModel(A* a);得到一个A对象的时候,在GetModel()中怎么给a的属性赋值
如:可以判断如果name是null可以赋_T(""),width是null那么赋什么呢?
int main()
{
A *a=new A();
DalA *dala=new DalA();
dala-GetModel(a);
return 0;
}
不知道说明白了不
例如现在定义了这样的一个对象
class A
{
public:
A();
virtual ~A();
protected:
int m_id;
CString m_name;
double m_hight;
double m_width;
}
然后再定义一个类来对上面的类的属性进行数据库的操作
class DalA
{
public:
DalA();
virtual ~DalA();
public:
bool Insert(A* a);
bool GetModel(A* a,int id);
}
在主函数中
int main()
{
A *a=new A();
a->m_id=4;
a->m_hight=1.256;//这里只给两个属性赋值
DalA *dala=new DalA();
dala->Insert(a);
return 0;
}
插入数据库后要求这样的效果
id name hight width
4 null 1.256 null
1.A中的属性怎么初始化?
如:可以给数值型的赋0,给字符串赋_T("")2.Insert(A* a);怎么实现,提供思路即可。反过来。用bool GetModel(A* a);得到一个A对象的时候,在GetModel()中怎么给a的属性赋值
如:可以判断如果name是null可以赋_T(""),width是null那么赋什么呢?
int main()
{
A *a=new A();
DalA *dala=new DalA();
dala-GetModel(a);
return 0;
}
不知道说明白了不
解决方案 »
- 一个简单batch file,新手求解答
- 请教输入法注册表?高手请进
- gzip包在传递时如何判断传递完成.
- VC白痴问题,高手见凉
- 8位位图的颜色表
- 我用AfxGetMainWnd()->GetMenu()为什么得不到菜单?
- 两台机器用一根网线连接,其中一台用model上网,这台机器需要如何设置才能使另一台也同时能上网
- 本人做C++开发5年了,可辞职都过去4个月了还没找到工作,去了好多公司,都败在所谓的笔试题下了,怎么办
- 如何利用InternetConnect实现网址重定向
- 我做了个木马,可是怎么样可以神不知鬼不觉的安装到别人的机器中呀?
- 内存地址分配
- 获得句柄的简单问题,给分100!不行再加
ms-sql或者Access等。在这些数据库提供的客户段接口处进行数据库操作。
例如:建库,建表,以及表数据增加删除和查询。
理解了以上操作之后,再考虑用程序实现可以使用数据库本身提供对C++接口也可以考虑使用ODBC来实现。
{
public:
A()
{
m_id=0;
m_name=_T("");
m_hight=0.0;
m_width=0.0;
}
virtual ~A();
protected:
int m_id;
CString m_name;
double m_hight;
double m_width;
};
那就把你需要调用的SQL语句发送给底层的数据库操作就行了。是不是数据库的返回值获取的问题?
如果这样:(假设我有取得属性的get和set方法了)
CString sqlInsert;
sqlInsert.Formt(_T("Insert into table (id,name,hight,width) value (%d,'%s',%f,%f)"),
a->GetId(),
a->GetName(),
a->GetHight(),
a->GetWidth(),
);
这样的语句得不到下面的效果
id name hight width
4 null 1.256 null
http://community.csdn.net/Expert/TopicView3.asp?id=5748221
4 null 1.256 null那么sqlInsert.Formt(_T("Insert into table (id,name,hight,width) value (%d,NULL,%f,NULL)"),
a->GetId(),a->GetHight());