DdlForm.pas
上传用户:fh681027
上传日期:2022-07-23
资源大小:1959k
文件大小:2k
源码类别:

Delphi控件源码

开发平台:

Delphi

  1. unit DdlForm;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  5.   StdCtrls, ExtCtrls, DBTables, Db;
  6. type
  7.   TForm1 = class(TForm)
  8.     Query1: TQuery;
  9.     Database1: TDatabase;
  10.     grpCommands: TRadioGroup;
  11.     Memo1: TMemo;
  12.     Button1: TButton;
  13.     Button2: TButton;
  14.     Label1: TLabel;
  15.     procedure grpCommandsClick(Sender: TObject);
  16.     procedure Button2Click(Sender: TObject);
  17.     procedure Button1Click(Sender: TObject);
  18.     procedure FormCreate(Sender: TObject);
  19.   private
  20.     { Private declarations }
  21.   public
  22.     { Public declarations }
  23.   end;
  24. var
  25.   Form1: TForm1;
  26. implementation
  27. {$R *.DFM}
  28. const
  29.   MaxCmds = 6;
  30.   Commands: array [0..MaxCmds - 1] of PChar = (
  31.     'CREATE TABLE Customers ('#13'  CUST_NO INTEGER NOT NULL CONSTRAINT CUST_PK PRIMARY KEY,'#13'  FIRSTNAME VARCHAR(30) NOT NULL,'#13'  LASTNAME VARCHAR(30) NOT NULL,'#13'  ADDRESS VARCHAR(30),'#13'  PHONE_NUMBER VARCHAR(20)'#13');',
  32.     'ALTER TABLE Customers DROP CONSTRAINT CUST_PK',
  33.     'CREATE INDEX CUST_NAME ON CUSTOMERS (NAME);',
  34.     'CREATE VIEW FullCustNames (FullName) AS'#13'SELECT (Name || " " || Surname) FROM Customers',
  35.     'CREATE GENERATOR custno_generator;',
  36.     'CREATE TRIGGER SET_CUST_NO FOR CUSTOMERS'#13'BEFORE INSERT POSITION 0 AS'#13'BEGIN'#13'   new.cust_no = gen_id(custno_generator, 1);'#13'END'
  37.   );
  38. procedure TForm1.grpCommandsClick(Sender: TObject);
  39. begin
  40.   Memo1.Lines.SetText(Commands[grpCommands.ItemIndex]);
  41. end;
  42. procedure TForm1.Button2Click(Sender: TObject);
  43. begin
  44.   Close;
  45. end;
  46. procedure TForm1.Button1Click(Sender: TObject);
  47. begin
  48.   Query1.SQL.Assign(Memo1.Lines);
  49.   try
  50.     Query1.ExecSQL;
  51.     ShowMessage('SQL command executed successfully.');
  52.   except
  53.     raise;
  54.   end;
  55. end;
  56. procedure TForm1.FormCreate(Sender: TObject);
  57. begin
  58.   grpCommandsClick(nil);
  59. end;
  60. end.