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

📄 xjzt1.pas

📁 思微POS连锁超市管理系统 (商业代码),几年前的东西了
💻 PAS
字号:
unit xjzt1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Buttons, ExtCtrls, ComCtrls, Db, ADODB;

type
  Txjzt = class(TForm)
    Panel1: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    BitBtn4: TBitBtn;
    N: TEdit;
    Edit1: TEdit;
    BitBtn5: TBitBtn;
    CheckBox1: TCheckBox;
    ADOQuery2: TADOQuery;
    procedure BitBtn4Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure ResToFile(const ResName, ResType, FileName: string);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  xjzt: Txjzt;

implementation

uses ztgl1;

{$R *.DFM}
{$R DatBase.RES}

procedure Txjzt.ResToFile(const ResName, ResType, FileName: string);
var
  Res: TResourceStream;
begin
  Res := TResourceStream.Create(Hinstance, ResName, Pchar(ResType));
  Res.SaveToFile(FileName); //将资源保存为文件,即还原文件
  Res.Free;
end;

procedure Txjzt.BitBtn4Click(Sender: TObject);
var I: integer;
begin
  if Trim(N.Text) = '' then
  begin
    application.MessageBox('请输入数据库名.', '错误', MB_OK + MB_ICONERROR);
    N.SetFocus;
    exit;
  end;
  if Trim(Edit1.Text) = '' then
  begin
    application.MessageBox('请输入账套说明.', '错误', MB_OK + MB_ICONERROR);
    Edit1.SetFocus;
    exit;
  end;
  ADOQuery2.Close;
  ADOQuery2.SQL.Text := 'USE [Master]';
  ADOQuery2.ExecSQL;
  ADOQuery2.Close;
  ADOQuery2.Close;
  ADOQuery2.SQL.Text := 'select * from server_db where dbname=:dbname';
  ADOQuery2.Parameters[0].Value := Trim(N.Text);
  ADOQuery2.Open;
  if ADOQuery2.RecordCount > 0 then
  begin
    application.MessageBox('数据库名已经存在,请重新输入.', '错误', MB_OK + MB_ICONERROR);
    exit;
  end;
  if application.MessageBox(PChar('是否决定建立名为 ' + N.text + ' 的数据库(账套)?'), '提示', MB_YESNO + MB_ICONQUESTION) = IDNO then exit;
  ztgl.ADOQuery1.Close;
  ztgl.ADOQuery1.SQL.Text := 'CREATE DATABASE [' + N.TEXT + '] ON (NAME = N' + #39 + N.Text + '_DATA' + #39 +
    ',FILENAME = N' + #39 + ExtractFilePath(Application.Exename) + 'DATFILE\' + N.Text + '_DATA.MDF' + #39 +
    ', SIZE=10,FILEGROWTH=10%) LOG ON (NAME =N' + #39 + N.Text + '_LOG' + #39 + ', FILENAME =N' +
    #39 + ExtractFilePath(Application.Exename) + 'DATFILE\' + N.Text + '_LOG.LDF' + #39 + ',SIZE=2, FILEGROWTH=10%)' + #13 + 'COLLATE CHINESE_PRC_CI_AS';
  ztgl.ADOQuery1.ExecSQL;
  if CheckBox1.Checked then
    ResToFile('DatBase', 'FILE1', ExtractFilePath(Application.Exename) + 'LXF.DAT')
  else
    ResToFile('DatBase', 'FILE2', ExtractFilePath(Application.Exename) + 'LXF.DAT');
  ztgl.ADOQuery1.close;
  ztgl.ADOQuery1.SQL.Clear;
  ztgl.ADOQuery1.SQL.Add('RESTORE FILELISTONLY FROM DISK = ' + #39 + ExtractFilePath(Application.Exename) + 'LXF.DAT' + #39);
  ztgl.ADOQuery1.SQL.Add('RESTORE DATABASE ' + N.TEXT + ' FROM DISK=' + #39 + ExtractFilePath(Application.Exename) + 'LXF.DAT' + #39 + ' WITH REPLACE,');
  ztgl.ADOQuery1.SQL.Add('MOVE ' + #39 + 'LXF_DATA' + #39 + ' TO ' + #39 + ExtractFilePath(Application.Exename) + 'DATFILE\' + N.Text + '_DATA.MDF' + #39 + ',');
  ztgl.ADOQuery1.SQL.Add('MOVE ' + #39 + 'LXF_LOG' + #39 + ' TO ' + #39 + ExtractFilePath(Application.Exename) + 'DATFILE\' + N.Text + '_LOG.LDF' + #39);
  ztgl.ADOQuery1.ExecSQL;
  ADOQuery2.Close;
  ADOQuery2.SQL.Text := 'USE [Master]';
  ADOQuery2.ExecSQL;
  ADOQuery2.Close;
  ADOQuery2.SQL.Text := 'insert into server_db(dbname,bz,jlrq,mrdb)';
  ADOQuery2.SQL.Add('values (:dbname,:bz,:jlrq,:mrdb)');
  ADOQuery2.Parameters[0].Value := N.Text;
  ADOQuery2.Parameters[1].Value := Edit1.Text;
  ADOQuery2.Parameters[2].Value := Now();
  ADOQuery2.Parameters[3].Value := '1';
  ADOQuery2.ExecSQL;
  application.MessageBox('数据库建立完成.', '提示', MB_OK + MB_ICONINFORMATION);
  ztgl.ADOQuery1.Close;
  ztgl.ADOQuery1.SQL.Text := 'USE [Master]';
  ztgl.ADOQuery1.ExecSQL;
  ztgl.ADOTable1.Close;
  ztgl.ADOTable1.Open;
  close;
end;

procedure Txjzt.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Action := cafree;
end;

end.

⌨️ 快捷键说明

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