自動的にデータベースを作成します(DELPHI + SQL SERVER)

  手順TForm1.Btn_OKClick(送信者:TObjectを);
 VAR sqlConn:文字列;
 始める
  sqlConnを: = ' プロバイダ= SQLOLEDB.1; ' + ' パスワード= ' + Edit_Password.Text
   + ' ; trueに永続化セキュリティ情報を=;ユーザーID = ' + Edit_Name.Text
   + ;ソースデータ=  + Edit_Server.Text;
   IF Edit_Server.Text = EmptyStr 、その後 始める
    ShowMessageが(SQLサーバーの名前またはIPアドレスを入力してください!);  
    Edit_Server.SetFocus。
    出口; 
  エンド;
   IF Edit_Name.Text = EmptyStr そして インクルードが始まる
    ShowMessage(ユーザーのログイン名のデータベースを入力してください!;)
    Edit_Name.SetFocus; 
    出口; 
  エンド; 

   ADO_Test 
    始まる
      閉じる使用を; 
      のConnectionString: = sqlConn;
     エンド; 
   試し
    てみ
      Ado_Test.LoginPromptを: = falseに; 
      Ado_Test.Connected: = trueに、
      Messageboxはを(ハンドルには、接続は成功です。' ' プロンプト"、MB_OKまたはMB_ICONINFORMATION); 
      Button2.Click; 
    除く
      Messageboxは(ハンドル、PChar型(' 连接[ ' + Edit_Server.Text + ' ]!失败')、' 警告'、MB_OK またはMB_ICONWARNING);
    エンド; 
   最後に
    Ado_Test.Connected: = falseは、
   エンド;
エンド; 

手順TForm1.Button2Click(送信者:TObjectを); 
ヴァール
  memExecは、S:TStringListの。
  I、J:整数; 
  STRSQL、sqlstr、sqlconnstr:文字列; 

開始
 Sqlconnstrを: = ' IFはEXISTS(名= N master.dbo.sysdatabasesから名前を選択' ' ' 
   + ' 'ToolManage' ' + ' )[ToolManage]データベースを削除' ;
// 不使用路径选择用缺省的

 sqlstr: = ' を作成データベースToolManage ON(NAME = N'」' + ' ToolManage_Data '' ' 
     + ' 、FILENAME = N '' ' + ExtractFilePath(Application.ExeName)+ ' データ\ ToolManage_Data.MDF '' ' 
     + ' + 
    Ado_CreateSQL.Close。ToolManage_Log '' ' + ' 、FILENAME = N '' ' 
     + ExtractFilePath(Application.ExeName)+ ' データの\ ToolManage_Log.LDF '' ' 
     + ' 、SIZE = 1、FILEGROWTH = 10%)COLLATE Chinese_PRC_CI_AS ' 
 試してみてください
//    Ado_CreateSQL.SQL.Clearを。//清除创建的ADOの的のSQL 
//    //建立数据库Edit_database 
   Ado_CreateSQL.Connection:= Ado_Test。
   Ado_CreateSQL.Close; 
   Ado_CreateSQL.SQL.Add(' 使用マスター' ); 
   Ado_CreateSQL.ExecSQL; // 执行

    Ado_CreateSQL.SQL.Add(Sqlconnstr)。
    Ado_CreateSQL.ExecSQL; // 执行

    Ado_CreateSQL.Close。
    Ado_CreateSQL.SQL.Add(sqlstr)。
    Ado_CreateSQL.ExecSQL; // 执行

  Ado_CreateSQL.Close。
  Ado_CreateSQL.SQL.Add(' ToolManageを使用' ); 
  Ado_CreateSQL.ExecSQL; // 执行

  memExec: = TStringListの。作成します
  S: = TStringListの。作成しますしてみてください
   memExec.LoadFromFile(ExtractFilePath(Application.ExeName) + ' \データ\のsql.sqlを' ); 
   s.Clear; 
    I:= 0 - memExec.Count 1  ない
   始める
    場合、大文字(トリム(memExec.Strings [i]は))<> ''  その後
    始める
     場合、大文字((memExec.Strings [I])をトリム)<> ' GO '  その後、
      s.Add( memExec.Strings [i])と
     そうでない 場合は、大文字(トリム(memExec.Strings [I]))= ' GO '  その後、
     開始
      しようとし
       ます。strSQLを: = s.Text。
       QryAll 始め
        閉じます。
        SQL.Text: = ;
        STRSQL。
        ExecSQLメソッド; 
       最後
       s.Clear; 
      除く
       s.Clear; 
       ShowMessage(STRSQL)。
      エンド;
     エンド;
    エンド;
   エンド; 
   ShowMessage(' 创建ToolManage数据库成功!' ); 


    adocommand1 試みる
     screen.Cursorを: = crSqlWait。
     試す
      Ado_Test.Connectedを: = falseは、
      CommandTextを: = 使用マスター
      実行; 
      CommandTextを: = "
    
ROLLBACK IMMEDIATE WITH DATABASE ToolManage SET OFFLINEをALTER " ; 
      実行; 
      CommandTextを: =は' '=ディスクからデータベースを復元ToolManage' ' 
        + ExtractFilePath(Application.ExeName)+ ' バックアップ\ 2008年6月5日(ゼロ).BAK '' ' 
        + ' に置き換えと' ; 
      実行; 
      CommandTextを: = ' ROLLBACK IMMEDIATE WITH ALTER DATABASEのToolManage SET ONLINE ' ; 
      実行; 
      CommandTextを: = ' 使用ToolManage ' ; 
      実行;

      Ado_Test.Connected: = 真に; 
      CommandTextを: = ' 使用ToolManage ' ; 
      実行; 
      ShowMessage(' データベースを正常に初期化する!' );
      ザ・最後に
      screen.Cursor: = crDefault;
      エンド;
     除い
    E ON:例外が行う
     ShowMessageを(初期設定では、データベースを失敗しました!その理由は次のとおりです。"   +   e.Message);
     エンド; 

   DataM.UserName: = トリム(Edit_Name.Text); 
   DataM.UserPassword: = トリム(Edit_Password.Text)。
   DataM.Server:= トリム(Edit_Server.Text)。
   Ado_Test.Connected: = falseは、
  最後に
   memExec.Free; 
   s.Free; 
  エンド;
 除く
  DataM.UserName: = '' ; 
  DataM.UserPassword: = '' ; 
  DataM.Server: = '' ; 
  閉じる; 
  出口; 
 終わり; 
 閉じる; 
エンド; 

手順 TForm1.FormClose(送信者:TObjectを、VARの処置:TCloseAction)。
開始
 をForm1: = nilを; 
 アクション: = caFree。
エンド; 

手順TForm1.FormShow(送信者:TObjectを);
開始
 Edit_Server.Text: = ' 127.0.0.1を' ;
エンド ;

 

おすすめ

転載: www.cnblogs.com/jijm123/p/11229026.html
おすすめ