小弟的数据库里面使用Query部件要对Access数据库添加纪录,而且requestlive属性设置成True,但是执行ExecSQL发生错误,系统报错 table is read only.小弟的SQL语句已经在BDE的SQL Explore中测试通过,就是在系统中无法执行,请大大指教?难道Query部件无法对Access2000数据表进行操作吗?一定要使用ADO控件吗?小弟程序写了很多了,真的不想重来啊,请大大们指点。具体代码如下:
Query1.Close;
Query1.SQL.Clear; //SQL内容写入
Query1.SQL.Add('Insert into distributor');
Query1.SQL.Add('(Distri_num,Boss_name,Distri_company,Address,Phone,Bank_name,Bank_num,Memo)');
Query1.SQL.Add('Values');
Query1.SQL.Add('(:Distri_num,:Boss_name,:Distri_company,:Address,:Phone,:Bank_name,:Bank_num,:Memo)'); Query1.UnPrepare;
Query1.ParamByName('Distri_num').Value := Edit1.Text;
Query1.ParamByName('Boss_name').Value :=Edit3.Text;
Query1.ParamByName('Distri_company').Value := Edit2.Text;
Query1.ParamByName('Address').Value := Edit4.Text;
Query1.ParamByName('Phone').Value := Edit5.Text;
Query1.ParamByName('Bank_name').Value := Edit6.Text;
Query1.ParamByName('Bank_num').Value := Edit7.Text;
Query1.ParamByName('Memo').Value := Edit8.Text; Query1.Prepare;
Query1.ExecSQL;
Query1.Close;
Query1.SQL.Clear; //SQL内容写入
Query1.SQL.Add('Insert into distributor');
Query1.SQL.Add('(Distri_num,Boss_name,Distri_company,Address,Phone,Bank_name,Bank_num,Memo)');
Query1.SQL.Add('Values');
Query1.SQL.Add('(:Distri_num,:Boss_name,:Distri_company,:Address,:Phone,:Bank_name,:Bank_num,:Memo)'); Query1.UnPrepare;
Query1.ParamByName('Distri_num').Value := Edit1.Text;
Query1.ParamByName('Boss_name').Value :=Edit3.Text;
Query1.ParamByName('Distri_company').Value := Edit2.Text;
Query1.ParamByName('Address').Value := Edit4.Text;
Query1.ParamByName('Phone').Value := Edit5.Text;
Query1.ParamByName('Bank_name').Value := Edit6.Text;
Query1.ParamByName('Bank_num').Value := Edit7.Text;
Query1.ParamByName('Memo').Value := Edit8.Text; Query1.Prepare;
Query1.ExecSQL;
↑加空格試試
(注:換行的地方全部)
Query1.ParamByName('Boss_name').asstring:=Edit3.Text;
Query1.ParamByName('Distri_company').asstring:= Edit2.Text;
Query1.ParamByName('Address').asstring:= Edit4.Text;
Query1.ParamByName('Phone').asstring:= Edit5.Text;
Query1.ParamByName('Bank_name').asstring:= Edit6.Text;
Query1.ParamByName('Bank_num').asstring:= Edit7.Text;
Query1.ParamByName('Memo').asstring:= Edit8.Text;
Insert into distributor *此処有空格巴?* (Distri_num,Boss_name,Distri...)換行的地方引号内要全部有空格...
用默认的设置,就是requestlive属性设置成false