⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit5.~pas

📁 能够动态的实现数据库表的创建
💻 ~PAS
字号:
unit Unit5;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Mask, DBCtrls, StdCtrls, Grids,main, DBGrids, ExtCtrls, DB, ADODB,
  Buttons;

type
  Tedu = class(TForm)
    Panel1: TPanel;
    DBGrid1: TDBGrid;
    Edit1: TEdit;
    Edit2: TEdit;
    ADOQuery1: TADOQuery;
    DataSource1: TDataSource;
    Label1: TLabel;
    Label2: TLabel;
    ADOQuery2: TADOQuery;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    procedure DBGrid1DblClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  edu: Tedu;

implementation

uses Unit9;

{$R *.dfm}

procedure Tedu.DBGrid1DblClick(Sender: TObject);
begin
  edit1.text:=adoquery1.fieldbyname('学院名称').asstring;
  edit2.Text:=adoquery1.fieldbyname('系名称').asstring;
  BitBtn3.enabled:=true;
end;


procedure Tedu.FormCreate(Sender: TObject);
begin
    BitBtn3.Enabled:=false;
end;
procedure Tedu.BitBtn1Click(Sender: TObject);
var sql:string;  //创建表
begin
     if(edit1.Text='')and(edit2.text='')then
  begin
      application.MessageBox('请输入要添加的信息','提示',mb_ok);
      ADOquery1.close;
      ADOquery1.sql.clear;
      ADOquery1.sql.add('select * from 院系');
      ADOquery1.open;
     exit;
   end;
   if(edit1.Text='')and(edit2.text<>'')then
   begin
   application.MessageBox('请输入要添加在哪个学院','提示',mb_ok);
   exit;
   end;
   if(edit1.Text<>'')and(edit2.text='')then
   begin
   ADOquery1.close;
   ADOquery1.sql.clear;
   ADOquery1.sql.add('select * from 院系 where 学院名称='''+edit1.text+'''');
   ADOquery1.open;
   if ADOquery1.recordcount>0 then
   begin
       showmessage('该学院已经存在,要添加系请输入数据');
       edit1.selectall;
      ADOquery1.close;
      ADOquery1.sql.clear;
      ADOquery1.sql.add('select * from 院系');
      ADOquery1.open;
        exit;
   end;
   end;
   ADOquery1.close;
   ADOquery1.sql.clear;
   ADOquery1.sql.add('select * from 院系 where 系名称='''+edit2.text+'''');
   ADOquery1.open;
   if ADOquery1.recordcount>0 then
   begin
    showmessage('该系已经存在');
       edit2.selectall;
      ADOquery1.close;
      ADOquery1.sql.clear;
      ADOquery1.sql.add('select * from 院系');
      ADOquery1.open;
        exit;
   end;
  sql:='create table '+edit2.Text+'(学号 varchar(15), 姓名 varchar(10))';
  Adoquery2.close;
  Adoquery2.sql.Clear ;
  Adoquery2.SQL.add(sql);
  Adoquery2.Execsql;
  with ADOquery1 do
begin
append;
fieldvalues['学院名称']:=edit1.Text;
fieldvalues['系名称']:=edit2.Text;
 post;
 ADOquery1.close;
   ADOquery1.sql.clear;
   ADOquery1.sql.add('select * from 院系');
   ADOquery1.open;
end;
end;

procedure Tedu.BitBtn3Click(Sender: TObject);
var
 i:integer;
 sql:string;
begin
 i:=application.MessageBox('你确定要删除吗?','删除提示',mb_YesNO);
 if i=7 then
 exit;
   ADOquery1.Delete;
   ADOquery1.close;
   ADOquery1.sql.clear;
   ADOquery1.sql.add('select * from 院系');
   ADOquery1.open;
   sql:='drop table '+edit2.text+'';
   Adoquery2.close;
   Adoquery2.sql.Clear ;
   Adoquery2.SQL.add(sql);
   Adoquery2.Execsql;
   BitBtn3.Enabled:=false;
end;


procedure Tedu.BitBtn2Click(Sender: TObject);
begin
  close;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -