首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

BCB 创建ACCESS数据库表时出现记录过大的有关问题

2012-09-28 
BCB 创建ACCESS数据库表时出现记录过大的问题有这样几句代码:C/C++ codeCreateAccessDB(fileName) TStrin

BCB 创建ACCESS数据库表时出现记录过大的问题
有这样几句代码:

C/C++ code
  CreateAccessDB(fileName) ;    TStringList*slt =  GetModelStringList();    AnsiString creatStr = "(";    for(int i=0;i<slt->Count;i++)    {       if(i != slt->Count-1)       {         creatStr += slt->Strings[i] + "  Varchar(100)," ;       }       else       {         creatStr += slt->Strings[i] + "  Varchar(100))" ;       }    }    ADOQuery3->Close();    ADOQuery3->SQL->Text = "create table " + modelName +creatStr ;    try{ADOQuery3->ExecSQL();}    catch(...){Application->MessageBoxA("创建模板失败","提示");return;}

拼接成的SQL语句为:
SQL code
CREATE TABLE 图书(title  Varchar(100),creator  Varchar(100),subject  Varchar(100),description  Varchar(100),publisher  Varchar(100),contributor  Varchar(100),pubdate  Varchar(100),format  Varchar(100),identifier  Varchar(100),source  Varchar(100),language  Varchar(100),relation  Varchar(100),coverage  Varchar(100),rights  Varchar(100),txts  Varchar(100),files  Varchar(100),videos  Varchar(100),pics  Varchar(100))

这句话在Access中执行没有问题,可是在程序中运行却提示字段定义语法有问题。请大牛们赶紧出手,我都弄俩小时了。。。

[解决办法]
你把拼接好的SQL语句用OutputDebugString输出看看。
[解决办法]
1、检查拼接的字符串是否正确
2、把Varchar(100) 改为 text(100) 试试
[解决办法]
把language字段改个名试试

热点排行