AnsiString TableName="s"+IntToStr(i)+tableday;
AnsiString ifexit="SELECT count(*) FROM "+TableName;
DataModule1->ADOCommand->CommandText=ifexit;
try{
DataModule1->ADOCommand->Execute();
//如果表存在,则删除
AnsiString del="Drop Table "+TableName;
DataModule1->ADOCommand->CommandText=del;
DataModule1->ADOCommand->Execute();
//建立在try中删除的表
AnsiString SQL="Create Table "+TableName;
SQL+="(";
SQL+="d char(10),";
SQL+="Tw char(10)";
SQL+=")";
DataModule1->ADOCommand->CommandText=SQL;
DataModule1->ADOCommand->Execute();
}
catch(...){
//表不存在!,则新建
AnsiString SQL="Create Table "+TableName;
SQL+="(";
SQL+="d char(10),";
SQL+="Tw char(10)";
SQL+=")";
DataModule1->ADOCommand->CommandText=SQL;
DataModule1->ADOCommand->Execute();
}
用上面的语句判断一个Access库中的表是不是存在,如果存在删除重建,如果不存在重建,但是如果原来库中不存在所要求的表是时候,系统老是弹出出错标志,如果避免呢?
谢谢###
--------------------next---------------------
阅读(1141) | 评论(0) | 转发(0) |