sql server manager studio da yazılan sorgulamayı Delphiye Uyarlamak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
izmirlikemal
Üye
Mesajlar: 155
Kayıt: 10 Oca 2014 01:08
Konum: izmir/Buca

sql server manager studio da yazılan sorgulamayı Delphiye Uyarlamak

Mesaj gönderen izmirlikemal »

Merhaba dostlarım!
MSSQL Server Management Studio V17.2 kullanıyorum.
Bu platformda 'Pencere_Yonlu_Sorgulama' isimli aşağıdaki Stored Procedure de yazdığımda;

Kod: Tümünü seç

USE [IsiKaybiVeriTabani]

GO
/****** Object:  StoredProcedure [dbo].[Pencere_Yonlu_Sorgulama]    Script Date: 4.10.2018 10:41:54 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER Proc [dbo].[Pencere_Yonlu_Sorgulama]
@MahNo varchar(3),
@ProID integer,
@MuhID integer,
@Blok nvarchar(30),
@MusID integer,
@Yonler1 nvarchar(2),
@Yonler2 nvarchar(2)
AS
Select * From PencereVeKapiCevresi
Where Mahal_No=@MahNo and Proje_ID=@ProID and Muhendis_ID=@MuhID and BlokVeyaBolumAdi=@Blok and Musteri_ID=@MusID and Yon=@Yonler1 or Yon=@Yonler2
MSSQL Server Management Studio içinde aşağıdaki kodları yazarak 'Execute' bütonunu tıkladığımda girilen parametrelere uygun 2 satırlık(Yon Alanına KB,KD adında 2 adet parametre girdiğimden) doğru sonuç alıyorum.

Kod: Tümünü seç

USE [IsiKaybiVeriTabani]
GO
exec Pencere_Yonlu_Sorgulama '101',1002,1,'YOK',2,'KD','KB'
Ancak;
Delphi 10.2.3 platformunda yeni bir proje açıp Form'a 1 adet ADOConnection, 1 adet ADOStoredProc ekliyorum.
-ADOConnection' sayfanın sol yanında bulunanObject Inspector penceresinden Stored Procedure'ün bulunduğu Veritabanını bağlıyorum.
-ADOStoredProc'u Connection satından ADOConnection1 e bağlıyorum.
-Procedure Name açılır pencereden 'Pencere_Yonlu_Sorgulama' Stored Procedure'ü seçiyorum.
Daha sonra,
- ADOStoredProc'u Active okeyledğimde ise aşağıdaki hata mesajını alıyorum.
"Procedure or Function 'Pencere_Yonlu_Sorgulama' expects parameter '@MahNo', which was not supplied."
Birkaç kez değişik bişeyler denedim ama Form'un 'Design' sayfasından çıkıp, 'Code' sayfasına giremedim,
Yardımlarınızla 'Code' sayfasına girdiğimde 'Pencere_Yonlu_Sorgulama' Stored Procedure'üne nasıl parametre gönderip sonuçları dinamik diziye nasıl aktarırım.
Lütfen konuyla ilgi(Stored Procedure) detaylı bilgilenebileceğim kaynak verecek ve halizar soruma kod örneklemesi ile yanıt verebilecek tüm arkadaş ve dostlarıma teşekkür ederim. Hepinize hayırlı nasipler dilerim.
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3077
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: sql server manager studio da yazılan sorgulamayı Delphiye Uyarlamak

Mesaj gönderen sabanakman »

ADOQuery nesnesine sorguyu aynen yazarak open yapabilirsiniz.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7586
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Re: sql server manager studio da yazılan sorgulamayı Delphiye Uyarlamak

Mesaj gönderen mussimsek »

Biz Adoconnection ve AdoQuery kullanıyoruz. Veritabanına Adoconnection ile bağlandıktan sonra, query'e

dbo.SP_Procedure_Adı parametreler

şeklinde yazıp, Open veya ExecQuery ile çalıştırıyoruz.

Kolay gelsin.
izmirlikemal
Üye
Mesajlar: 155
Kayıt: 10 Oca 2014 01:08
Konum: izmir/Buca

Re: sql server manager studio da yazılan sorgulamayı Delphiye Uyarlamak

Mesaj gönderen izmirlikemal »

Sayın Şaban AKMAN ve Mustafa ŞİMŞEK, önerilerinizi dikkate alarak deneyeceğim, sonucu buradan paylaşırım. İyi akşamlar dileğimdir.
izmirlikemal
Üye
Mesajlar: 155
Kayıt: 10 Oca 2014 01:08
Konum: izmir/Buca

Re: sql server manager studio da yazılan sorgulamayı Delphiye Uyarlamak

Mesaj gönderen izmirlikemal »

Tekrar merhaba
AdoQuery nin object inspector penceresinde SQL (Tstring) sayfasına ne yazacağım.
Strored Procedure için delphide kod yazmanın çok ama çok acemisiyim. Biraz daha detaylı yardım bekliyorum.
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3077
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: sql server manager studio da yazılan sorgulamayı Delphiye Uyarlamak

Mesaj gönderen sabanakman »

IsiKaybiVeriTabani veritabanına bağlı olmak şartıyla
izmirlikemal yazdı: 05 Eki 2018 12:29

Kod: Tümünü seç

exec Pencere_Yonlu_Sorgulama '101',1002,1,'YOK',2,'KD','KB'
yazmanız yeterli.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
izmirlikemal
Üye
Mesajlar: 155
Kayıt: 10 Oca 2014 01:08
Konum: izmir/Buca

Re: sql server manager studio da yazılan sorgulamayı Delphiye Uyarlamak

Mesaj gönderen izmirlikemal »

Merhaba!
Özür dilerim ama sanki cümleleri ağzınızdan cümleleri kerpetenle söküp alacağım. Ben sizlerden bilgi istiyorum. Verdiğiniz yanıtlar tek cümlelik. Yine de iliginiz için teşekkür ederim.
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3077
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: sql server manager studio da yazılan sorgulamayı Delphiye Uyarlamak

Mesaj gönderen sabanakman »

- Başlat -> Programlar -> Delphi'yi açın.
- File -> New Project ile yeni porje oluşturun (veya var olan projenizi File -> Open ile açın)
- Projenize bir adet ADOConnection bileşeni ekleyin ve IsiKaybiVeriTabani veritabanına bağlayın (veya open ile açtığınız projenizdeki ADOConnection bileşenini ayarlayın)
- Projenize bir adet ADOQuery ekleyin ve Connection özelliğini bir önceki adımda ayarladığınız ADOConnection'a ayarlayın.
- Bu ADOQuery bileşeninin SQL özelliğini exec Pencere_Yonlu_Sorgulama '101',1002,1,'YOK',2,'KD','KB' şeklinde (veya ADOQuery1.SQL.Text:='exec Pencere_Yonlu_Sorgulama ''101'',1002,1,''YOK'',2,''KD'',''KB'''; kodu ile SQL özelliğini) ayarladıktan sonra
- ADOQuery1.Active:=True; (veya ADOQuery1.Open;) yaparak stored procedure u çalıştırarak oluşan kayıtları elde edebiliriniz.

Tabi bu ADOQuery1 nesnesini bir DataSource üzerinden DBGrid bileşenine bağlamayı sakın unutmayın. Kayıtları ekranda görebilmek istiyorsanız bu veya buna benzer bir bağlantıyı muhakkak kurmanız gerekmektedir. :shock:
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
thelvaci
Kıdemli Üye
Mesajlar: 770
Kayıt: 11 Tem 2010 07:17
Konum: Istanbul
İletişim:

Re: sql server manager studio da yazılan sorgulamayı Delphiye Uyarlamak

Mesaj gönderen thelvaci »

TADOStoredProc nesnesini kullanabilirsiniz. Sol kulağınızı elinizi sağdan dolaştırıp tutmanıza gerek yok. TADOStoredProc'un Parameters.Refresh metodu ile parametrelerin oluşmasını sağlarsınız, ardından da Parameters.ParamByName ile parametrelere gereken değerleri atarsınız. Hepsi bu kadar.
Cevapla