// ADO连接
TADOConnection *con = new TADOConnection(NULL);
TADOQuery *aq = new TADOQuery(NULL);
TADOQuery *aq1 = new TADOQuery(NULL);
try
{
if (con->Connected)
con->Connected = false;
try
{
AnsiString s;
con->ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Password="+
QuotedStr(s)+";User ID=Admin;Data Source="+strMdbFile+
";Mode=Share Deny None;Persist Security Info=True;Jet OLEDB:Database Password=''"+
";Jet OLEDB:Engine Type=5;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False";
//这个可以关闭database login提示对话框
con->LoginPrompt=false;
con->Connected = true;
}
catch(...)
{
::MessageBox(0, TEXT("打开数据库失败!"),
TEXT("警告"), MB_OK | MB_ICONWARNING);
}
// 如果连接成功,就通过ADOQuery读取字段
if (con->Connected)
{
AnsiString SQLtxt;
if(SSCnow.SSClb==3)
SQLtxt="select * from p3 order by cgstr";
else if(SSCnow.SSClb==2)
SQLtxt="select * from 3D order by cgstr";
else
SQLtxt="select * from SSC order by cgstr";
aq->Connection = con;
aq->Close();
aq->SQL->Clear();
aq->SQL->Text = AnsiString().sprintf(
TEXT("%s"),
SQLtxt);
try
{
//批量数据集修改
aq->Open();
if(aq->RecordCount==0)//说明彩果为空
{
for(int Ri=0;Ri<Memo3->Lines->Count ;Ri++)
{
if(Memo3->Lines->Strings[Ri].Length()>5 && !Memo3->Lines->Strings[Ri].Pos("=") )
{
aq->Append() ;//开始修改数据
aq->FieldByName("cgstr")->AsString=Memo3->Lines->Strings[Ri];
aq->Post(); //next的游标就已经post了
}
}
}
else //说明原彩果库不为空
{
aq->Last();//最后一个记录
for(int Ri=Memo3->Lines->Count-1 ;Ri>=0;Ri--)
{
if(aq->FieldByName("cgstr")->AsString==Memo3->Lines->Strings[Ri])
{
//当找到相同期数时
for(int J=Ri+1;J<Memo3->Lines->Count;J++)
{
if(Memo3->Lines->Strings[J].Length()>5 && !Memo3->Lines->Strings[Ri].Pos("="))
{
aq->Append() ;//开始修改数据
aq->FieldByName("cgstr")->AsString=Memo3->Lines->Strings[J];
aq->Post(); //next的游标就已经post了
}
}
}
}
}
CGxs();
//ShowMessage("完成彩果保存!");
}
catch(...)
{
//bSucceed = false;
::MessageBox(0, TEXT("打开表时发生错误!"),
TEXT("警告"), MB_OK | MB_ICONWARNING);
}
}
}
__finally
{
delete aq;
delete con;
}