Kodbank İndir

! CODEBANK 2012 !

İNDİRMEK&DETAYLI BİLGİ ALMAK İÇİN BURAYI TIKLAYINIZ.

ÖNEMLİ AÇIKLAMA: MUTLAKA OKUYUNUZ!

Gönderen Konu: MS SQL Server'ün Çalışıp Çalışmadığını Kontrol Etme  (Okunma sayısı 3588 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı dynamo

  • Kıdemli Üye
  • *****
  • İleti: 120
  • Rep: +3/-1
sql server veritabanını kullanan bir uygulamamnın yüklü olduğu bilgisayarda SQL Server'ün çalışıp çalışmadığını kontrol etmek için bir fonksiyon yapalım.IsSQLServerRunning fonksiyonu, 3 parametre alır:

function IsSQLServerRunning(server:string; database:string; sapassword:string): boolean;
server-->bilgisayar adı
database--->veritabanı katalog adı
sapassword--->sql server yüklendiğinde sa ya verilen şifre

Kod: [Seç]
function IsSQLServerRunning(server:string; database:string; sapassword:string): boolean;
var
  TempConnection: TADOConnection;
  TempConnectionString: string;
begin
  try
    try
      Result := TRUE;

      TempConnection := TADOConnection.Create(nil);
      TempConnectionString := 'Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Password=%s;Initial Catalog=%s;Data Source=%s';

      TempConnection.CommandTimeOut := 5;
      TempConnection.ConnectionTimeOut := 5;
      TempConnection.ConnectionString := Format(TempConnectionString, [sapassword, database, server]);
      TempConnection.KeepConnection := FALSE;
      TempConnection.LoginPrompt := FALSE;
      TempConnection.Open;
    except
      Result := FALSE;
    end
  finally
    TempConnection.Close;

    TempConnection.Free;
    TempConnection := nil;
  end;
end;



Kod: [Seç]
function GetComputerName: string;
var
  buffer: array[0..MAX_COMPUTERNAME_LENGTH + 1] of Char;
  Size: Cardinal;
begin
  Size := MAX_COMPUTERNAME_LENGTH + 1;
  Windows.GetComputerName(@buffer, Size);
  Result := StrPas(buffer);
end;

server parametresine, GetComputerName fonksiyonuyla çalıştığı bilgisayarın adı sistemden alınabilir.böylece başka bir bilgisayarda çalıştırdığımızda her seferinde bilgisayar adını değiştirmek zorunda kalmayız.

database parametresine "master" veritabanı adı atanır.istenirse uygulamanın kullandığı veritabanı adı da olabilir.

kullanımı:

Kod: [Seç]
procedure TForm1.Button1Click(Sender: TObject);
begin
  if IsSQLServerRunning(GetComputerName,'master','') then
  begin
    ShowMessage('SQL Server çalışıyor.');
  end
  else
  begin
    ShowMessage('SQL Server çalışmıyor......');
  end;

end;


bu fonksiyonu bir unit içinde tanımlayıp ,uniti uses kısmına ekleyerek başka projelerde kullanabiliriz.

Kod: [Seç]
unit SQLConnection;

interface

uses
  SysUtils,ADODB;


  function IsSQLServerRunning(server:string; database:string; sapassword:string): boolean;


implementation

function IsSQLServerRunning(server:string; database:string; sapassword:string): boolean;
var
  TempConnection: TADOConnection;
  TempConnectionString: string;
begin
  try
    try
      Result := TRUE;

      TempConnection := TADOConnection.Create(nil);
      TempConnectionString := 'Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Password=%s;Initial Catalog=%s;Data Source=%s';

      TempConnection.CommandTimeOut := 5;
      TempConnection.ConnectionTimeOut := 5;
      TempConnection.ConnectionString := Format(TempConnectionString, [sapassword, database, server]);
      TempConnection.KeepConnection := FALSE;
      TempConnection.LoginPrompt := FALSE;
      TempConnection.Open;
    except
      Result := FALSE;
    end
  finally
    TempConnection.Close;

    TempConnection.Free;
    TempConnection := nil;
  end;
end;


end.


örnek uygulama ekte

Çevrimdışı beyaztual

  • Yeni Üye
  • *
  • İleti: 3
  • Rep: +0/-0
guzel paylasım bilgine muhtac insalar oldugunu unutmamak lazım

Çevrimdışı hakancobr2

  • Yeni Üye
  • *
  • İleti: 2
  • Rep: +0/-0
Ynt: MS SQL Server'ün Çalışıp Çalışmadığını Kontrol Etme
« Yanıtla #2 : 20 Mayıs 2010 16:57:04 »
tşk ler

Çevrimdışı hakancobr2

  • Yeni Üye
  • *
  • İleti: 2
  • Rep: +0/-0
Ynt: MS SQL Server'ün Çalışıp Çalışmadığını Kontrol Etme
« Yanıtla #3 : 31 Temmuz 2010 23:19:54 »
tskler