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

还是ADOQuery1.SQL.Add的有关问题

2012-06-06 
还是ADOQuery1.SQL.Add的问题按照CSND网友的代码 我写的是begin{ if messagedlg(确认添加数据吗?,mtInfo

还是ADOQuery1.SQL.Add的问题
按照CSND网友的代码 我写的是 

begin
  { if messagedlg('确认添加数据吗?',mtInformation,[mbYES,mbNO],0)<>mrYes then exit;
  if (trim(edit1.Text)='') or (trim(edit2.Text)='') then exit ; }
with adoquery1 do
begin
  close;
  sql.clear;
  sql.add('insert into small ([name],[price],[num],[other]) values(:name,:price,:num,:other)');
  parameters.paramByName('name').Value:=Edit1.Text;
  parameters.paramByName('price').Value:=Edit2.Text;
  parameters.paramByName('num').Value:=edit3.Text;
  parameters.paramByName('other').Value:=Edit4.Text;
  try
  ExecSQL;
  finally
  Close;
end;
end;
end;


我的数据库表名 是 small  
表里面的项 分别是 name,price,num,other
数据类型 分别是 varchar,varchar,num,vahrach;
写入的数据 分别在 edit1,edit2,edit3,edit4个编辑框中

为什么我这样写一直出错呢 报错的如图

求解决 小弟新手 感谢各位

[解决办法]
你用的是MySQL ,网上给你的方法(字段名加[])是MS SQL的方法,不知是不是适合MySQL。你把那个表的字段名改下,不要用"name",再去掉[]试试。
[解决办法]
mySQL 使用 ` `("~"键),而不是[]
[解决办法]
为避免冲突,字段名或表名最好改一下
[解决办法]
mysql不能用[xxx],要用`xxx`

热点排行