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

c++builder sql话语

2013-01-05 
c++builder sql语句Query1-CloseQuery1-SQL-Clear()Query1-SQL-Add(deletefromuserwhereuser_id:

c++builder sql语句
Query1->Close;   
  Query1->SQL->Clear();   
  Query1->SQL->Add("delete   from   user   where   user_id=:inid");   
  Query1->ParamByName("inid")->AsString=Edit4->Text;   
  Query1->ExecSQL();
为什么我在cb中打Query1->没有出现 ParamByName这个方法  只有Parameters方法 
而且  int s=StrToInt( f->Selected->Text[1]);
        AnsiString sql=" select * from class where classid ="+s;
sql根本就没有出现s这个值 只是select * from class where classid = 
[解决办法]
首先确认你用的是TQuery还是TADOQuery组件.
TQuery有ParamByName方法.
TADOQuery有Parameters属性.
这两个是不一样的.

第二个问题, 改成:
AnsiString sql = " select * from class where classid =" + f->Selected->Text;
就行了.
[解决办法]
可以通过参数的名称来传:

ADOQuery1->Parameters->ParamByName("参数1")->Value = String("字符串值");
ADOQuery1->Parameters->ParamByName("参数2")->Value = 123; // 整形值


也可以通过索引来传:
ADOQuery1->Parameters->Items[0]->Value = String("字符串值");
ADOQuery1->Parameters->Items[1]->Value = 123; // 整形值

热点排行