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

delphi 向数据库插入数据有关问题

2012-04-21 
delphi 向数据库插入数据问题unit Unit3interfaceusesWindows, Messages, SysUtils, Variants, Classes,

delphi 向数据库插入数据问题

unit Unit3;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGrids, DB, ADODB, StdCtrls;

type
  TForm1 = class(TForm)
  ADOConnection1: TADOConnection;
  ADOQuery1: TADOQuery;
  DataSource1: TDataSource;
  DBGrid1: TDBGrid;
  Edit1: TEdit;
  Edit2: TEdit;
  Button1: TButton;
  procedure Button1Click(Sender: TObject);
  procedure Searchdata(ADO:TADOQuery;Str:string);
  private
  { Private declarations }
  public
  { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
  procedure Searchdata(ADO:TADOQuery;Str:string);
begin
  try
  ADO.Close;
  ADO.SQL.Clear;
  ADO.SQL.ADD(Str);
  ADO.ExecSQL;
  except
  ShowMessage('错误');
  end;

procedure TForm1.Button1Click(Sender: TObject);

begin
 Searchdata(ADOQuery1,'insert into yjszsmlxt_bs_xydmb(xlh,xydm,xymc) values('21','021','lixu')');
end;

end.




[Error] Unit3.pas(43): Statement expected but 'PROCEDURE' found
[Error] Unit3.pas(46): Missing operator or semicolon
[Error] Unit3.pas(46): ')' expected but identifier 'lixu' found
[Error] Unit3.pas(19): Unsatisfied forward or external declaration: 'TForm1.Searchdata'
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit3.pas'

程序和报错我都贴了上来, 我怀疑是过程定义有问题 sql语句写的应该也有问题 一堆单引号 不知道行不行
高手指点一下好不??数据库已经连上了 在线等!!

[解决办法]
values('21','021','lixu')
SQL语句中的字符串用双引号——values(''21'',''021'',''lixu'')
不然引号无法匹配的

[解决办法]

Delphi(Pascal) code
unit Unit3;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, Grids, DBGrids, DB, ADODB, StdCtrls;type  TForm1 = class(TForm)  ADOConnection1: TADOConnection;  ADOQuery1: TADOQuery;  DataSource1: TDataSource;  DBGrid1: TDBGrid;  Edit1: TEdit;  Edit2: TEdit;  Button1: TButton;  procedure Button1Click(Sender: TObject);  procedure Searchdata(ADO:TADOQuery;Str:string);  private  { Private declarations }  public  { Public declarations }  end;var  Form1: TForm1;implementation{$R *.dfm}  procedure Searchdata(ADO:TADOQuery;Str:string);begin  try  ADO.Close;  ADO.SQL.Clear;  ADO.SQL.ADD(Str);  ADO.ExecSQL;  except  ShowMessage('错误');  end;end;  // 这里少了个  endprocedure TForm1.Button1Click(Sender: TObject);begin Searchdata(ADOQuery1,'insert into yjszsmlxt_bs_xydmb(xlh,xydm,xymc) values('21','021','lixu')');end;end.
[解决办法]
推荐楼主 使用 cnpack 这样就不会犯这种错误了
[解决办法]
探讨
推荐楼主 使用 cnpack 这样就不会犯这种错误了

热点排行