📄 delfield.pas
字号:
{##########################################
旁注入侵专用程序 3.0升级版
----------------------------------------
模块:数据库浏览 - 删除字段
描述:该单元主要用于删除
作者:2005.4.2日中午 明小子
##########################################}
unit DelField;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, RzLstBox;
type
TDelFieldForm = class(TForm)
Label2: TLabel;
CbTable: TComboBox;
StatusBar1: TStatusBar;
Label1: TLabel;
Button1: TButton;
Button2: TButton;
FieldLsb: TRzListBox;
procedure FormShow(Sender: TObject);
procedure CbTableChange(Sender: TObject);
procedure CbTableKeyPress(Sender: TObject; var Key: Char);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
DelFieldForm: TDelFieldForm;
implementation
uses MainUnit;
{$R *.dfm}
procedure TDelFieldForm.FormShow(Sender: TObject);
var
i: integer;
begin
if MainForm.TableTree.Items.Count = 0 then Exit;
CbTable.Clear;
for i := 0 to MainForm.TableTree.Items.Count - 1 do
CbTable.Items.Add(MainForm.TableTree.Items[i].Text);
CbTable.ItemIndex := 0;
try
FieldLsb.Clear;
MainForm.ADOQuery1.Close;
MainForm.ADOQuery1.SQL.Text := 'select * from ' + CbTable.Text;
MainForm.ADOQuery1.Open;
for i := 0 to MainForm.ADOQuery1.FieldCount - 1 do
FieldLsb.Items.Add(MainForm.ADOQuery1.Fields[i].FieldName);
except
end;
end;
procedure TDelFieldForm.CbTableChange(Sender: TObject);
var
i: integer;
begin
try
FieldLsb.Clear;
MainForm.ADOQuery1.Close;
MainForm.ADOQuery1.SQL.Text := 'select * from ' + CbTable.Text;
MainForm.ADOQuery1.Open;
for i := 0 to MainForm.ADOQuery1.FieldCount - 1 do
FieldLsb.Items.Add(MainForm.ADOQuery1.Fields[i].FieldName);
except
end;
end;
procedure TDelFieldForm.CbTableKeyPress(Sender: TObject; var Key: Char);
begin
key := #0;
end;
procedure TDelFieldForm.Button1Click(Sender: TObject);
begin
if CbTable.Text = '' then Exit;
if FieldLsb.ItemIndex = -1 then
begin
application.MessageBox('请先选择你所要删除的字段!', '提示', 64);
exit;
end;
try
if application.MessageBox('你确定要删除该字段吗?', '提示', 32 + MB_YESNO) = 6 then
begin
MainForm.ADOQuery1.Close;
MainForm.ADOQuery1.SQL.Text := 'alter table ' + CbTable.Text + ' drop column ' + FieldLsb.Items[FieldLsb.Itemindex];
MainForm.ADOQuery1.ExecSQL;
StatusBar1.Panels[0].Text := '操作成功,该字段已被删除!';
MainForm.FieldsTree.Items.Clear;
end;
except
StatusBar1.Panels[0].Text := '操作失败,该字段无法删除!';
end;
end;
procedure TDelFieldForm.Button2Click(Sender: TObject);
begin
Close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -