TADODataSet记录更新到数据库中
TADODataSet通过loadfile加载xml文件,怎么把这些记录更新到数据库中
TADODataSet的字段比数据库文件中的少一个(自动编号的这个字段),但保证另一个字段内容是唯一的,以这个字段为准,如果存在这条记录则更新到数据库中,如果不存在这条记录就插入一条.
大概的例子
数据库:
ID SN Name
1 x-1 a
2 x-2 b
TADODataSet:
SN Name
x-1 abc
x-2 b
x-3 c
合并后:
ID SN Name
1 x-1 abc
2 x-2 b
3 x-3 c
[解决办法]
实现是可以的,方法很多,只提供思路!代码不保证一个字母不差。
例子一、
在放一个query,查询数据库
query->sql = select * from t;
然后遍历TADODataSet进行处理
while(!ADODataSet->eof)
{
if( query->Locate("sn",ADODataSet->FieldByName("sn")->Value) )
{
//数据库有记录
}
else
{
//数据库无记录
query->Append();
query->FieldByName("..")->Value = ...;
query->Post();
}
ADODataSet->Next();
}