📄 unit_xiaohao.~pas
字号:
unit Unit_xiaohao;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, DB, ADODB, Grids, DBGrids;
type
TForm_xiaohao = class(TForm)
GroupBox1: TGroupBox;
StatusBar1: TStatusBar;
GroupBox2: TGroupBox;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
Edit3: TEdit;
Label4: TLabel;
Edit4: TEdit;
Label5: TLabel;
Edit5: TEdit;
Button1: TButton;
GroupBox3: TGroupBox;
GroupBox4: TGroupBox;
CheckBox1: TCheckBox;
ComboBox1: TComboBox;
Edit7: TEdit;
Label6: TLabel;
CheckBox2: TCheckBox;
ComboBox2: TComboBox;
DateTimePicker1: TDateTimePicker;
CheckBox3: TCheckBox;
ComboBox3: TComboBox;
DateTimePicker2: TDateTimePicker;
UpDown1: TUpDown;
Button2: TButton;
Button3: TButton;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
CheckBox4: TCheckBox;
Label14: TLabel;
Label15: TLabel;
CheckBox6: TCheckBox;
Edit6: TEdit;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
List_id: TListBox;
List_js: TListBox;
ComboBox4: TComboBox;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button1Click(Sender: TObject);
procedure Edit7Change(Sender: TObject);
procedure Edit7KeyPress(Sender: TObject; var Key: Char);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Label13Click(Sender: TObject);
procedure CheckBox6Click(Sender: TObject);
procedure Edit6Change(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form_xiaohao: TForm_xiaohao;
implementation
uses Unit1, Unit_clear;
{$R *.dfm}
procedure TForm_xiaohao.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ADOQuery1.Active:=false;
ADOConnection1.Connected:=false;
edit1.Enabled:=true;
edit2.Enabled:=true;
edit3.Enabled:=true;
edit4.Enabled:=true;
edit5.Enabled:=true;
button1.Enabled:=true;
form_main.Visible :=true;
end;
procedure TForm_xiaohao.Button1Click(Sender: TObject);
var
sqlstring:string;
begin
if Application.MessageBox('在这里,你的每一次操作都会直接写进SQL表.因此,在你更改之前最好先备份好数据库.同时,如果你想删除数据库那么必需是在EI关闭的情况下.否则你的更改可能不会生效.如果你觉得没有问题就点确定进入,否则请取消!!','提示',MB_OKCANCEL+MB_ICONWARNING)<>mrOk then
begin
ADOQuery1.Active:=false;
ADOConnection1.Connected:=false;
exit;
end;
sqlstring:=('Provider=SQLOLEDB.1;Password='+edit4.Text +';Persist Security Info=True;User ID='+edit3.Text +';Initial Catalog='+edit2.Text +';Data Source='+edit5.Text );
ADOConnection1.ConnectionString:=sqlstring;
adoquery1.Active:=false;
adoquery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from tbl_accountadd');
ADOConnection1.Connected:=true;
try
adoquery1.Active:=true;
except
Application.MessageBox('联接game数据库失败,请检查各项值是否正确.','错误',MB_OK+MB_ICONWARNING);
groupbox3.Enabled :=false;
statusbar1.Panels[0].Text:='联接game数据库失败....';
exit;
end;
label10.Caption:=inttostr(adoquery1.RecordCount);
ADOConnection1.Connected:=false;
sqlstring:=('Provider=SQLOLEDB.1;Password='+edit4.Text +';Persist Security Info=True;User ID='+edit3.Text +';Initial Catalog='+edit1.Text +';Data Source='+edit5.Text );
ADOConnection1.ConnectionString:=sqlstring;
adoquery1.Active:=false;
adoquery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from tbl_character');
ADOConnection1.Connected:=true;
try
ADOQuery1.Active:=true;
except
Application.MessageBox('联接数据库失败,请检查各项值是否正确.','错误',MB_OK+MB_ICONWARNING);
groupbox3.Enabled :=false;
statusbar1.Panels[0].Text:='联接数据库失败....';
ADOConnection1.Connected:=false;
exit;
end;
groupbox3.Enabled :=true;
statusbar1.Panels[0].Text:='数据库成功联接....';
edit1.Enabled :=false;
edit2.Enabled :=false;
edit3.Enabled :=false;
edit4.Enabled :=false;
edit5.Enabled :=false;
button1.Enabled :=false;
label11.Caption:=inttostr(ADOQuery1.RecordCount);
end;
procedure TForm_xiaohao.Edit7Change(Sender: TObject);
begin
if strtoint(edit7.Text) <0 then edit7.Text :='0';
if strtoint(edit7.Text) >255 then edit7.Text :='255';
end;
procedure TForm_xiaohao.Edit7KeyPress(Sender: TObject; var Key: Char);
begin
if not(key in['0'..'9',#8]) then
begin
key:=#0;
MessageBeep(1);
end;
end;
procedure TForm_xiaohao.Button2Click(Sender: TObject);
var
sqlstring,findname:string;
//dbfile:textfile;
i:Integer;
begin
LIST_JS.Items.Clear;
if Application.MessageBox('本操作根据你数据大小,可能会浪费一点时间,程序本身也可能会出现没有响应的情况,这个时候请你慢慢等待,不要以为程序死机!!','提示',MB_OKCANCEL+MB_ICONWARNING)= mrOk then
begin
ADOConnection1.Connected :=false;
sqlstring:=('Provider=SQLOLEDB.1;Password='+edit4.Text +';Persist Security Info=True;User ID='+edit3.Text +';Initial Catalog='+edit1.Text +';Data Source='+edit5.Text );
ADOConnection1.ConnectionString :=sqlstring;
try
adoconnection1.Connected:=true;
except
Application.MessageBox('联接game失败!!!','错误',MB_OK +MB_ICONERROR );
exit;
end;
sqlstring:='';
if checkbox1.Checked then
begin
sqlstring:='(FLD_LEVEL '+combobox1.Text+' '+edit7.Text+')';
end;
if checkbox2.Checked then
begin
if checkbox1.Checked then sqlstring:=sqlstring+' and (fld_updatedatetime '+combobox2.Text+label15.Caption+DateTimeToStr(DateTimePicker1.DateTime)+label15.Caption+')' else sqlstring:=sqlstring+' (fld_updatedatetime '+combobox2.Text+label15.Caption+datetimetostr(DateTimePicker1.DateTime)+label15.Caption+')';
end;
if checkbox3.Checked then
begin
if (checkbox1.checked )or( checkbox2.checked) then sqlstring:=sqlstring+' and (FLD_MAKEDATE '+combobox3.Text+label15.Caption+DateTimeToStr(datetimepicker2.DateTime)+label15.Caption+')' else sqlstring:=sqlstring+' (FLD_MAKEDATE'+combobox3.Text+label15.Caption+DateTimeToStr(datetimepicker2.DateTime)+label15.Caption+')';
end;
if checkbox1.Checked or checkbox2.Checked or checkbox3.Checked then sqlstring:=('select * from TBL_CHARACTER WHERE '+Sqlstring ) else sqlstring:=('select * from TBL_CHARACTER ' );
if checkbox6.Checked then
begin
if edit6.Text <> '' then
begin
if RadioButton1.Checked then
begin
sqlstring:=('select * from TBL_CHARACTER WHERE FLD_character='+''''+edit6.Text +'''');
end
else
begin
sqlstring:=('select * from TBL_CHARACTER WHERE FLD_userid='+''''+edit6.Text +'''');
end;
end
else
begin
Application.MessageBox('角色或帐号不能为空!!','错误',MB_OK+MB_ICONERROR);
edit6.SetFocus ;
exit;
end;
end;
ADOQuery1.SQL.Clear;
ADOQuery1.sql.Add(sqlstring);
if ADOQuery1.Active then ADOQuery1.ExecSQL else ADOQuery1.Active:=true;
label12.Caption:=inttostr(ADOQuery1.RecordCount);
StatusBar1.Panels[1].Text:='查询结果:'+label12.Caption;
if ADOQuery1.RecordCount>0 then
begin
button3.Enabled:=true;
{assignfile(dbfile,(ExtractFilePath(Application.ExeName)+'\findname.txt'));
rewrite(dbfile); }
i:=0;
ADOQuery1.First ;
for i:=1 to (ADOQuery1.RecordCount) do
begin
findname:=ADOQuery1.FieldValues['FLD_CHARACTER'];
list_js.Items.Add(findname);
//writeln(dbfile,findname);
//i:=i+1;
ADOQuery1.Next;
end;
{Flush(dbfile);
closefile(dbfile);}
end
else button3.Enabled:=false;
end
else
begin
///
end;
end;
procedure TForm_xiaohao.Button3Click(Sender: TObject);
var
number,i,n,a,b,c,j,temp_j,k:Integer;
kkk,kk:Boolean;
delstring,sqlstring,delfq,findname:string;
begin
List_ID.Items.Clear;
b:=0;
c:=0;
if Application.MessageBox('请你确定以下几个情况后再点确定删除,否则可能会有严重的后果。1: EIserver是关闭的。2: 你删除的条件是正确的吗!4:看到了查询结果是正确的!5:做好了备份了!6:做好了被玩家骂的准备! 如果你觉得没问题,那么就点确定吧!!!','提示',MB_OKCANCEL+MB_ICONWARNING)=mrOk then
begin
button3.Enabled:=false;
form_clear.Caption :='正在进行删除操作......';
i:=list_js.Items.Count;
form_clear.ProgressBar1.Max :=i;
form_clear.ProgressBar2.Max :=i;
form_clear.ProgressBar3.Max :=i;
form_clear.ProgressBar4.Max :=i;
form_clear.ProgressBar5.Max :=i;
form_clear.ProgressBar6.Max :=i;
form_clear.ProgressBar7.Max :=i;
form_clear.ProgressBar8.Max :=i;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -