日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Install Shield制作安装包技巧(SQL篇)

發布時間:2023/12/2 数据库 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Install Shield制作安装包技巧(SQL篇) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、檢查SQL Server是否安裝
  
  prototype CheckSQL();
  function CheckSQL()
   BOOL bSuccess;
   NUMBER nType, nvSize;
   STRING szVer;
   STRING szSetupVer, szSetupPath;
  begin
   RegDBSetDefaultRoot ( HKEY_LOCAL_MACHINE );
   szSetupPath = "SOFTWARE\\Microsoft\\MSSQLServer\\Setup";
   szSetupVer = "SOFTWARE\\Microsoft\\MSSQLServer\\MSSQLServer\\CurrentVersion";
   //獲取SQL Server版本
   nType = REGDB_STRING;
   if (RegDBGetKeyValueEx ( szSetupVer, "CurrentVersion" , nType , szVer , nvSize ) < 0) then
   bSuccess = FALSE;
   else
   //獲取SQL Server安裝路徑
   if (RegDBGetKeyValueEx ( szSetupPath, "SQLPath" , nType , szSQLPATH , nvSize ) < 0) then
   bSuccess = FALSE;
   else
   bSuccess = TRUE;
   endif;
   endif;
  
   return bSuccess;
  end;
  
  2、檢查SQL Server版本號,是否安裝了SP3
  prototype CheckSQLVersion();
  function CheckSQLVersion()
   BOOL bSuccess;
   NUMBER nType, nvSize;
   STRING szVer;
   STRING szSetupVer;
  begin
   RegDBSetDefaultRoot ( HKEY_LOCAL_MACHINE );
   bSuccess = FALSE;
   szSetupVer = "SOFTWARE\\Microsoft\\MSSQLServer\\MSSQLServer\\CurrentVersion";
   nType = REGDB_STRING;
   if (RegDBGetKeyValueEx ( szSetupVer, "CSDVersion" , nType , szVer , nvSize ) < 0) then
   bSuccess = FALSE;
   else
   if szVer = '8.00.761' then
   bSuccess = TRUE;
   endif;
   endif;
   return bSuccess;
  end;
  
  3、啟動SQL Server服務器
  prototype StartSQLServr(STRING, STRING);
   //傳入用戶名,用戶密碼
  
  function StartSQLServr(szLoginName, szPassword)
   BOOL bSuccess;
   VARIANT objSQL;
  begin
   objSQL = CreateObject("SQLDMO.SQLServer");
   if IsObject(objSQL) then
   try
   try
   objSQL.Start(TRUE, "(Local)", szLoginName, szPassword);
   catch
   objSQL.Connect("(Local)", szLoginName, szPassword);
   endcatch;
   catch
   bSuccess = FALSE;
   return bSuccess;
   endcatch;
   else
   bSuccess = FALSE;
   return bSuccess;
   endif;
  
   if objSQL.VerifyConnection then
   bSuccess = TRUE;
   else
   bSuccess = FALSE;
   endif;
  
   return bSuccess;
  end;
  
  4、檢查數據庫是否已經存在
  prototype IsExistDB(STRING, STRING, STRING);
   //傳入用戶名,用戶密碼,數據庫名
  function IsExistDB(szLoginName, szPassword, szDBName)
   BOOL bExist;
   NUMBER i;
   STRING szTemp;
   VARIANT objSQL;
  begin
   objSQL = CreateObject("SQLDMO.SQLServer");
  
   objSQL.Connect("(Local)", szLoginName, szPassword);
  
   bExist = FALSE;
   for i = 1 to objSQL.Databases.Count
   StrToUpper(szTemp, objSQL.Databases.Item(i).Name);
   if (szTemp == szDBName) then
   bExist = TRUE;
   return bExist;
   endif;
   endfor;
  
   return bExist;
  
  end;
  
  5、刪除數據庫
  prototype DeleteDB(STRING, STRING, STRING);
   //傳入用戶名,用戶密碼,數據庫名
  function DeleteDB(szLoginName, szPassword, szDBName)
   STRING szSQL;
  
  begin
  
   szSQL = "declare @dttm varchar(55) \n"
   + "select @dttm=convert(varchar,getdate(),113)\n"
   + "raiserror('Beginning Check Database at %s ....',1,1,@dttm) with nowait \n"
   + "GO \n"
   + "use master \n"
   + "go \n"
   + "if exists (select * from sysdatabases where name='" + szDBName + "') \n"
   + "begin \n"
   + "raiserror('Dropping existing " + szDBName + " database ....',0,1) \n"
   + " DROP database " + szDBName + "\n"
   + "end \n"
   + " GO \n"
   + "CHECKPOINT \n"
   + "go \n";
  
  
   if !ExecuteSQL(szLoginName, szPassword, szSQL) then
   return FALSE;
   endif;
  
   return TRUE;
  
  end;

轉載于:https://www.cnblogs.com/N0Game/archive/2009/06/16/1504363.html

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的Install Shield制作安装包技巧(SQL篇)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。