📄 unit1.~pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, DB, ADODB;
type
TForm1 = class(TForm)
DataSource1: TDataSource;
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
DBGrid1: TDBGrid;
Button1: TButton;
Button2: TButton;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Memo1: TMemo;
Button3: TButton;
Button4: TButton;
ADOQuery2: TADOQuery;
Edit4: TEdit;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure DataSource1DataChange(Sender: TObject; Field: TField);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
var
i: integer;
begin
Try
ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=data.mdb;Persist Security Info=True';
ADOConnection1.Open; //或者用 ADOConnection1.Connected:=True
Except
ShowMessage('打开数据库错误');
end;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from News');
ADOQuery1.ExecSQL; //发送命令 或者用 ADOQuery1.Prepared;
ADOQuery1.Close;
ADOQuery1.Open; //或者用 ADOQuery1.Active:=True;
//指定DBGrid1每列的宽度
For i:=0 to ADOQuery1.FieldCount-1 do
DBGrid1.Columns[i].Width:=60;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
begin
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(Edit4.Text);
ADOQuery1.ExecSQL; //发送命令 或者用 ADOQuery1.Prepared;
ADOQuery1.Close;
ADOQuery1.Open; //或者用 ADOQuery1.Active:=True;
For i:=0 to ADOQuery1.FieldCount-1 do
DBGrid1.Columns[i].Width:=60; //指定列宽度
end;
procedure TForm1.Button2Click(Sender: TObject);
var
i: integer;
begin
with ADOQuery2 do
begin
Sql.Clear;
Sql.Add('INSERT INTO News (TIT,URL,CONTENT,PIC) Values (');
SQL.Add(' '''+EDIT1.Text +''' , ');
SQL.Add(' '''+EDIT2.Text +''' , ');
SQL.Add(' '''+MEMO1.Text +''' , ');
SQL.Add(' '''+EDIT3.Text +''' ) ');
ExecSQL;
end;
ADOQuery1.Close;
ADOQuery1.Open;
For i:=0 to ADOQuery1.FieldCount-1 do
DBGrid1.Columns[i].Width:=60; //指定列宽度
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
with ADOQuery2 do
begin
SQL.Clear;
SQL.Add('UPDATE News');
SQL.Add('SET ');
SQL.Add('TIT = '''+EDIT1.Text +''' , ');
SQL.Add('URL = '''+EDIT2.Text +''' , ');
SQL.Add('CONTENT = '''+MEMO1.Text +''' , ');
SQL.Add('PIC = '''+EDIT3.Text +''' ');
SQL.Add('WHERE ENO = '+ADOQuery1.FieldByName('ENO').AsString +' ');
ExecSQL;
end;
ADOQuery1.Close;
ADOQuery1.Open;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add('DELETE FROM News ');
ADOQuery2.SQL.Add('WHERE ENO = '+ADOQuery1.FieldByName('ENO').AsString +' ');
ADOQuery2.ExecSQL;
ADOQuery1.CLOSE;
ADOQuery1.OPEN;
end;
procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField);
begin
EDIT1.Text := Query1.FieldByName('Tit').AsString;
EDIT2.Text := Query1.FieldByName('URL') .AsString;
EDIT3.Text := Query1.FieldByName('PIC').AsString;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -