亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? unit_dbparamset.pas

?? 它可在Windows Server 2003 Windows 2000 Windows XP Windows 9*/ME Windows NT 平臺下工作并運行
?? PAS
字號:
unit Unit_DBParamSet;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, Buttons, ADODB, DB,ShellAPI,jpeg,Registry,FileCtrl,
  ComCtrls;

type
  Tfrm_DBParamSet = class(TForm)
    Panel1: TPanel;
    Label1: TLabel;
    Image1: TImage;
    Panel2: TPanel;
    Label2: TLabel;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    Label3: TLabel;
    Label4: TLabel;
    edt_ConnUser: TEdit;
    Label5: TLabel;
    edt_Pwd: TEdit;
    lst_SQLSrvList: TListBox;
    edt_DBName: TEdit;
    Label6: TLabel;
    Bevel1: TBevel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    ADOConn: TADOConnection;
    ADS: TADODataSet;
    chkSafe: TCheckBox;
    BitBtn3: TBitBtn;
    edt_ServerName: TEdit;
    Label10: TLabel;
    ADOQuery1: TADOQuery;
    Label11: TLabel;
    edt_DataPath: TEdit;
    Button1: TButton;
    Bevel2: TBevel;
    RichEdit1: TRichEdit;
    procedure FormCreate(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure lst_SQLSrvListClick(Sender: TObject);
    procedure edt_DBNameKeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormKeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure BitBtn2Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure chkSafeClick(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
    DBConStr: string;
    FMacineName: string;
    FDBName: string;
    FPwd: string;
    FConnUser: string;
    isServer: Boolean;
    srcMdf:string;
    srcLdf:string;
    function DBExists: Boolean;
    function ConnectDB(DBConStr:string):Boolean;
    procedure GetSQLServerLsit;
    function GetLocalSQLDataPath:string;
    procedure CopyFile(Const SrcFile,DestFile:string);
  public
    { Public declarations }
  end;

var
  frm_DBParamSet: Tfrm_DBParamSet;

implementation

uses
  comobj;
{$R *.dfm}

function Tfrm_DBParamSet.DBExists: Boolean;
begin
  with ADS do
  begin
    Close;
    CommandText := 'SELECT * FROM sysdatabases WHERE name = ''' + FDBName + '''';
    Open;
    if isEmpty then
      Result := False
    else
      Result := True;
  end;
end;

procedure Tfrm_DBParamSet.FormCreate(Sender: TObject);
begin
  GetSQLServerLsit;
  edt_DataPath.Text:=GetLocalSQLDataPath;
  srcMdf:=ExtractFilePath(ParamStr(0))+'Data\test_data.mdf';
  srcLdf:=ExtractFilePath(ParamStr(0))+'Data\test_log.ldf';
end;

procedure Tfrm_DBParamSet.BitBtn1Click(Sender: TObject);
const
  SQLStr='exec sp_attach_db %s,%s,%s';
var
  DBConStr: string;
  sFile1,sFile2:string;
begin
  if Trim(edt_DBName.Text) = '' then
  begin
    Application.MessageBox('您必需輸入要創建的數據庫名稱!', '信息提示', MB_OK + MB_ICONINFORMATION);
    Exit;
  end;

  if Trim(edt_ConnUser.Text) = '' then
  begin
    Application.MessageBox('輸入您選中的SQL Server服務器的數據庫管理員名稱,默認為sa', '信息提示', MB_OK + MB_ICONINFORMATION);
    Exit;
  end;

  FDBName := edt_DBName.Text;
  FConnUser := edt_ConnUser.Text;
  FPwd := Trim(edt_Pwd.Text);

  if chkSafe.Checked = True then
    DBConStr:='Provider=SQLOLEDB.1;Integrated Security=SSPI;'+
                'Persist Security Info=False;User ID=sa;Initial Catalog=master;Data Source='+FMacineName
  else if FPwd = '' then
    DBConStr := 'Provider=SQLOLEDB.1;Persist Security Info=False;' +
      'User ID=' + FConnUser + ';Initial Catalog=master;Data Source=' + FMacineName
  else
    DBConStr := 'Provider=SQLOLEDB.1;Password=' + FPwd + ';Persist Security Info=True;' +
      'User ID=' + FConnUser + ';Initial Catalog=master;Data Source=' + FMacineName;

  ADOConn.ConnectionString :=DBConStr;
  try
    ADOConn.Connected := True;
    if not DBExists then
    begin
        //1、拷貝數據庫文件
        //2、將數據庫加載到SQL Server
      try
        CopyFile(srcMdf,(edt_DataPath.Text+Trim(edt_DBName.Text)+'_data.mdf'));
        CopyFile(srcLdf,(edt_DataPath.Text+Trim(edt_DBName.Text)+'_log.ldf'));

        sFile1:=''''+edt_DataPath.Text+Trim(edt_DBName.Text)+'_data.mdf'+'''';
        sFile2:=''''+edt_DataPath.Text+Trim(edt_DBName.Text)+'_log.ldf'+'''';
        ADOQuery1.SQL.Clear;
        ADOQuery1.SQL.Add(Format(SQLStr,[edt_DBName.Text,sFile1,sFile2]));
        ADOQuery1.ExecSQL;        //附加數據庫
        ADOConn.Connected:=False;
        Application.MessageBox('創建數據庫成功!','FRACAS',MB_OK);
        Bitbtn1.Enabled:=False;
     except
        if ADOConn.Connected=True then ADOConn.Connected:=False;
        Application.MessageBox('創建數據庫失敗!','數據庫創建程序',MB_OK);
     end;
    end
    else
    begin
      Application.MessageBox('數據庫已經存在,請更換數據庫名稱!', '信息提示', MB_OK + MB_ICONINFORMATION);
      BitBtn1.Enabled:=False;
      edt_DBName.SelectAll;
      edt_DBName.SetFocus;
      Exit;
    end;
  except
    Application.MessageBox('不能連接服務器,請稍后重試!', '信息提示', MB_OK + MB_ICONINFORMATION);
    Close;
  end;
end;

procedure Tfrm_DBParamSet.lst_SQLSrvListClick(Sender: TObject);
begin
  edt_ServerName.Text := lst_SQLSrvList.Items[lst_SQLSrvList.ItemIndex];
end;

procedure Tfrm_DBParamSet.edt_DBNameKeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = 13 then
    edt_Pwd.SetFocus;
end;

procedure Tfrm_DBParamSet.FormKeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (Key = VK_F8) and (ssCtrl in Shift) then
  begin
    edt_ConnUser.Color := clWhite;
    edt_ConnUser.Enabled := True;
    edt_ConnUser.SetFocus;
  end;
end;

procedure Tfrm_DBParamSet.BitBtn2Click(Sender: TObject);
begin
  Close;
end;

procedure Tfrm_DBParamSet.FormShow(Sender: TObject);
begin
  edt_DBName.SetFocus;
end;

procedure Tfrm_DBParamSet.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  Action := caFree;
  frm_DBParamSet := nil;
end;

procedure Tfrm_DBParamSet.chkSafeClick(Sender: TObject);
begin
  if chkSafe.Checked = True then
  begin
    edt_Pwd.Color:=clSilver;
    edt_Pwd.Enabled:=False;
  end
  else
  begin
    edt_Pwd.Color:=clWhite;
    edt_Pwd.Enabled:=True;
  end;
end;

procedure Tfrm_DBParamSet.BitBtn3Click(Sender: TObject);
begin
  if Trim(edt_ServerName.Text)='' then
  begin
    Application.MessageBox('您沒有選擇或輸入要安裝的SQL Server服務器!', '信息提示', MB_OK + MB_ICONINFORMATION);
    edt_ServerName.SetFocus;
    Exit;
  end;
  if Trim(edt_ConnUser.Text) = '' then
  begin
    Application.MessageBox('輸入您選中的SQL Server服務器的數據庫管理員名稱,默認為sa', '信息提示', MB_OK + MB_ICONINFORMATION);
    Exit;
  end;

  FMacineName:=edt_ServerName.Text;
  FDBName := edt_DBName.Text;
  FConnUser := edt_ConnUser.Text;
  FPwd := Trim(edt_Pwd.Text);

  IF chkSafe.Checked =True then
    DBConStr:='Provider=SQLOLEDB.1;Integrated Security=SSPI;'+
                'Persist Security Info=False;User ID=sa;Initial Catalog=master;Data Source='+FMacineName
  else if FPwd = '' then
    DBConStr := 'Provider=SQLOLEDB.1;Persist Security Info=False;' +
      'User ID=' + FConnUser + ';Initial Catalog=master;Data Source=' + FMacineName
  else
    DBConStr := 'Provider=SQLOLEDB.1;Password=' + FPwd + ';Persist Security Info=True;' +
      'User ID=' + FConnUser + ';Initial Catalog=master;Data Source=' + FMacineName;
      
  Screen.Cursor:=crHourGlass;
  try
    if ConnectDB(DBConStr) then
    begin
      Application.MessageBox('測試連接成功','信息提示',MB_OK+MB_ICONINFORMATION);
      BitBtn1.Enabled:=True;
    end
    else
      Application.MessageBox('測試連接失敗,請重新測試或選用其他的服務器','信息提示',MB_OK+MB_ICONINFORMATION)
  finally
    Screen.Cursor:=crDefault;
  end;
end;

function Tfrm_DBParamSet.ConnectDB(DBConStr: string): Boolean;
begin
  try
    ADOConn.ConnectionString:=DBConStr;
    ADOConn.Connected:=True;
    Result:=True;
    ADOConn.Connected:=False;
  except
    Result:=False;
    ADOConn.Connected:=False;
  end;
end;

procedure Tfrm_DBParamSet.GetSQLServerLsit;
var
  SQLServer: Variant;
  ServerList: Variant;
  i, nServers: integer;
begin
  lst_SQLSrvList.Items.Clear;
  try
    SQLServer := CreateOleObject('SQLDMO.Application');
    ServerList := SQLServer.ListAvailableSQLServers;
    nServers := ServerList.Count;
    for i := 1 to nservers do
      lst_SQLSrvList.Items.Add(ServerList.Item(i));
    SQLServer := NULL;
    serverList := NULL;
  except
    Application.MessageBox('您當前的機器沒有安裝SQL Server,無法導入SQL Server服務器列表,'+#13+#10+'請直接輸入SQL Server服務器名稱!','信息提示',MB_OK+MB_ICONINFORMATION);
  end;
end;

function Tfrm_DBParamSet.GetLocalSQLDataPath: string;
var
  myReg:TRegistry;
begin
  myReg:=TRegistry.Create;
  with myReg do
  try
    RootKey:=HKEY_LOCAL_MACHINE;
    if OpenKey('Software\Microsoft\MSSQLServer\Setup\',False) then
      Result:=ReadString('SQLDataRoot')+'\Data\'
    else
      Result:='';
  finally
    CloseKey;
    Free;
  end;
end;

procedure Tfrm_DBParamSet.Button1Click(Sender: TObject);
var
  myDist:string;
begin
  if SelectDirectory('選擇路徑','',myDist) then
    edt_DataPath.Text:=myDist;
end;

procedure Tfrm_DBParamSet.CopyFile(const SrcFile, DestFile: string);
var
  FileOp: TSHFileOpStruct;
begin
  with FileOp do
  begin
    Wnd := 0;
    wFunc := FO_Copy;//更換此參數可實現拷貝和更名
    pFrom := PChar(SrcFile);
    pTo := PChar(DestFile);
    fFlags := FOF_NoConfirmation;
    fAnyOperationsAborted := False;
    hNameMappings := nil;
    lpszProgressTitle := nil
  end;
  SHFileOperation(FileOp);
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品理论电影在线观看| 91亚洲精品一区二区乱码| 日韩视频一区在线观看| 青青草国产成人99久久| 91精品国产综合久久久久久| 日本欧美在线看| 欧美成人a在线| 成人av在线影院| 亚洲男同1069视频| 欧美日本在线播放| 国产精品一品二品| 亚洲女爱视频在线| 欧美一激情一区二区三区| 国产剧情一区二区| 亚洲免费视频成人| 日韩一区二区三区电影在线观看 | 中文字幕综合网| 欧美色区777第一页| 久久99热狠狠色一区二区| 日本一二三不卡| 欧美日韩一区在线观看| 激情六月婷婷久久| 亚洲资源在线观看| 精品国偷自产国产一区| 91在线精品秘密一区二区| 日韩av网站在线观看| 国产欧美精品国产国产专区| 欧美日韩国产不卡| 国产精品91一区二区| 午夜精品福利在线| 国产精品天美传媒沈樵| 欧美一区二区视频在线观看2022 | 免费日韩伦理电影| 亚洲欧洲精品一区二区精品久久久 | 国产精品综合视频| 亚洲一区二区四区蜜桃| 国产欧美精品一区aⅴ影院| 欧美午夜一区二区| 成人av先锋影音| 免费观看日韩av| 亚洲一区在线观看免费观看电影高清| 久久免费视频色| 欧美日韩激情一区| 91浏览器在线视频| 国产精品1024久久| 六月丁香综合在线视频| 亚洲国产美女搞黄色| 国产精品免费丝袜| 欧美精品一区二区在线观看| 欧美精品自拍偷拍动漫精品| 91蝌蚪porny九色| 高清在线观看日韩| 国产永久精品大片wwwapp| 91在线看国产| 国产精品99久久久久久久女警 | 久久机这里只有精品| 亚洲小说春色综合另类电影| 成人欧美一区二区三区在线播放| 久久一夜天堂av一区二区三区| 欧美日韩国产综合一区二区三区| 色噜噜夜夜夜综合网| av在线不卡电影| 成人网页在线观看| 国产麻豆视频精品| 精品综合久久久久久8888| 五月激情丁香一区二区三区| 亚洲国产精品久久艾草纯爱| 亚洲综合在线视频| 亚洲免费观看高清完整版在线 | 久久久综合九色合综国产精品| 欧美一区二区三区在线观看| 欧美午夜免费电影| 欧美高清视频在线高清观看mv色露露十八 | 久久综合狠狠综合久久激情| 精品久久久久久久人人人人传媒| 日韩一级片网站| 精品国产一区二区精华| 精品国产一区二区在线观看| 久久久久综合网| 久久久www成人免费毛片麻豆 | 国产精品嫩草影院av蜜臀| 国产女主播在线一区二区| 中文字幕精品一区二区精品绿巨人| 国产拍欧美日韩视频二区| 亚洲国产精品精华液2区45| 国产精品久久久久久久第一福利| 国产精品乱子久久久久| 亚洲人123区| 亚洲成av人综合在线观看| 天天操天天干天天综合网| 青青草国产成人99久久| 国产一区二区三区香蕉| av电影天堂一区二区在线| 成人禁用看黄a在线| 国产精品三级在线观看| 国产女人18水真多18精品一级做| 欧美精品一区二区三区高清aⅴ| 国产亚洲成av人在线观看导航| 亚洲国产精品激情在线观看| 最新日韩av在线| 午夜精品视频一区| 久久99在线观看| 成人av小说网| 91精品在线免费| 久久久亚洲欧洲日产国码αv| 中文字幕一区在线观看| 亚洲mv在线观看| 国产高清亚洲一区| 日本韩国精品在线| 26uuu精品一区二区| 亚洲欧洲色图综合| 不卡一区二区三区四区| 91在线精品一区二区| 欧美一区欧美二区| 国产精品久久久久久一区二区三区| 亚洲欧美激情小说另类| 久久99精品久久久久久国产越南| 福利电影一区二区三区| 欧美日韩黄色影视| 国产精品毛片a∨一区二区三区| 亚洲电影第三页| 成人毛片在线观看| 欧美疯狂性受xxxxx喷水图片| 国产精品你懂的在线| 666欧美在线视频| 国产日韩欧美激情| 亚洲成人av福利| 懂色av噜噜一区二区三区av| 欧美精品18+| 亚洲老司机在线| 国产精品一级片| 91精品国产色综合久久ai换脸 | 国产精品欧美一级免费| 日日夜夜精品视频天天综合网| 成人精品电影在线观看| 精品国产91九色蝌蚪| 亚洲电影第三页| 99精品视频在线免费观看| 久久婷婷综合激情| 麻豆国产精品777777在线| 91高清视频在线| 亚洲欧洲国产日本综合| 国产大片一区二区| 日韩视频不卡中文| 午夜欧美视频在线观看| 91国偷自产一区二区三区观看| 久久久久久久久久久黄色| 老司机精品视频线观看86| 欧美视频精品在线观看| 亚洲免费观看在线观看| 97精品超碰一区二区三区| 久久久www成人免费无遮挡大片| 玖玖九九国产精品| 91精品婷婷国产综合久久竹菊| 亚洲欧美日韩一区二区三区在线观看| 岛国精品在线观看| 久久综合av免费| 国产在线不卡视频| 精品成人佐山爱一区二区| 在线精品亚洲一区二区不卡| 亚洲日本一区二区| 99r精品视频| 一区二区三区精品在线观看| 福利电影一区二区| 国产午夜精品久久久久久久 | 美国十次了思思久久精品导航| 日本黄色一区二区| 亚洲综合激情网| 色婷婷综合久久久中文字幕| 亚洲男女一区二区三区| 91久久久免费一区二区| 亚洲一区二区偷拍精品| 欧美精三区欧美精三区| 奇米777欧美一区二区| 欧美精品在欧美一区二区少妇| 亚洲成人激情自拍| 欧美一区二区三区日韩| 免费成人av资源网| 久久久亚洲精品石原莉奈| 粉嫩一区二区三区性色av| 欧美国产精品久久| 色爱区综合激月婷婷| 亚洲成人综合在线| 日韩午夜精品电影| 高潮精品一区videoshd| 亚洲欧美日韩一区二区| 欧美日韩成人在线| 久久97超碰色| 国产美女一区二区三区| 日韩视频国产视频| 国产精品一区二区三区99| 国产精品成人免费在线| 色哟哟亚洲精品| 免费观看一级欧美片| 国产三区在线成人av| 91国产视频在线观看| 免费观看一级欧美片| 中文字幕亚洲在| 欧美高清精品3d| 国产成人一级电影|