Delphide çalışmayan sql?

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

Delphide çalışmayan sql?

Mesaj gönderen naile »

Ms sql server 2005 de oluşturduğum tablodaki alana description yazdım ve create cümlesini aldığımda o alan için alta bir de şöyle bir kod ekledi:

Kod: Tümünü seç

EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'deneme kolonudur' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Table_1', @level2type=N'COLUMN',@level2name=N'deneme'
Delphide tablonun create cümlesini bu kodla birlikte çalıştırınca:
"Parametre nesnesi hatalı tanımlanmış. Uyumsuz veya eksik bilgiler verilmiş" diye hata veriyor. Bu kodu kaldırırsam tabloyu oluşturuyor. Ancak bu kodu ms sql serverın kendisi yazıyor zaten ve kendi içinde çalıştırdığımda sorun yok. Delphi neden çalıştırmıyor? Çalıştımam için ne yapmam gerekir?
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7587
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

ParamCheck veya CheckParams gibi bir özellik var. Bunu False yapıp bir denesene.

Bir de bu ayrı bir SQL cümlesi. İkisi aynı anda çalıştığı için olmayabilir. Önce tabloyu create edip, sonra bu SQL'i ayrıca çalıştırmayı bir dene. İki aşamada yani.

Kolay gelsin.
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

Mesaj gönderen naile »

Tamam hocam hata vermedi çok teşekkürler :)

Ama işin garibi ms sql server kodlar arasına "GO" kelimesini koyuyor. Ama GO olunca arada delphi yine hata veriyor. Go'yu kaldırınca hatsız oluşturdu.
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3077
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

Tahminime göre GO kelimesi, MicroSoftun programları tarafından SQL cümlelerini ayırıp, farklı olarak çalıştırmayı sağlıyor. Mesela bizim program tarafından her GO kelimesi incelenip SQL cümleleri ayrıştırılıp ADOQuery.EXCUTE etmemiz gibi bir işlevi olabilir. Aradan GO kelimeleri çıkarılıp tek ADOQuery.EXCUTE komutunu da çalıştırabiliriz ama GO ile sorguları ayrı ayrı çalıştırmanın bir nedeni olabilir. Zamanında ikna olacağım bir örnek vermişlerdi ama şu anda aklımda değil.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Cevapla