Query Nesnesine birden çok soru eklemek.

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
kara_kule06
Üye
Mesajlar: 150
Kayıt: 18 Nis 2006 02:15
Konum: ankara/polatlı
İletişim:

Query Nesnesine birden çok soru eklemek.

Mesaj gönderen kara_kule06 »

Slm arkadaşlar.

Ben zeos query nesnesi kullanıyorum. ve bu nesneye kod ile birden çok sorgu ekleyip en son çalıştırmam gerekiyor.

Şöyle bişey olacak

Kod: Tümünü seç

query.sql.add('insert into tablo(alan1,alan2) VALUES (value1,value2)');
query.sql.add('insert into tablo(alan1,alan2) VALUES (value1,value2)');
query.sql.add('insert into tablo(alan1,alan2) VALUES (value1,value2)');
query.sql.add('insert into tablo(alan1,alan2) VALUES (value1,value2)');

query.ExeSql;

Burada ek sorgu olunca çalışıyor ama diğerleri eklenince syntax hatası veriyor.

Acaba bunu systaxı nasıl?

Kolay Gelsin.
İlim öğrenmek akıntıya karşı yüzmek gibidir. Ara verildiği zaman gerilenir...
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Mesaj gönderen conari »

Aralara virgül koyarsan olur diye düşünüyorum. Fakat
Oluşan queryi bir memo içine alıp incelemende fayda var.
veya bir döngü kurup ekleyip Queryi çalıştır her seferinde.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
kara_kule06
Üye
Mesajlar: 150
Kayıt: 18 Nis 2006 02:15
Konum: ankara/polatlı
İletişim:

Mesaj gönderen kara_kule06 »

döngü kurup her defasında çalıştırmam programın performansını olumsuz etkileyeceğinden ben döngü içinde sorguları sırayla ekledikten sonra bir kez query nesnesini çalıştırmayı istiyorum. bunu çözemedim. deneyip çözen varsa lütfen.
İlim öğrenmek akıntıya karşı yüzmek gibidir. Ara verildiği zaman gerilenir...
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

Kullandığın yapı bunu destekler bir yapıda mı bilemiyorum ama SQL Server bu işi dilediğin şekilde yapıyor. Yani:

Kod: Tümünü seç

adoquery.sql.add('insert into tablo(alan1,alan2) VALUES (value1,value2)');
adoquery.sql.add('insert into tablo(alan1,alan2) VALUES (value1,value2)');
query.ExeSql;
yazınca iki kayıt birden eklenebiliyor. Başka bir şekilde begin-end arasına alarak yapabiliyor.

Kod: Tümünü seç

adoquery.sql.add('begin');
adoquery.sql.add('insert into tablo(alan1,alan2) VALUES (value1,value2)');
adoquery.sql.add('insert into tablo(alan1,alan2) VALUES (value1,value2)');
adoquery.sql.add('end');
query.ExeSql;
bu kodların her ikisi de aynı işi yaparak 2 kayıt birden ekleyebiliyor. Eğer kullandığın veritabanı SQL olarak yazdığın kodu bu şekilde kabul ediyorsa delphiden yaptığın bu şekildeki kodu da kabul edecektir.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Cevapla