sqlde sorun çıkaran tablo ismi

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
dabaddah
Üye
Mesajlar: 167
Kayıt: 13 Mar 2008 04:42
Konum: istanbul

sqlde sorun çıkaran tablo ismi

Mesaj gönderen dabaddah »

arkadaşlar;

bir projede firebird veritabanında user isminde bir tablo oluşturulmuş.

bu tabloya sql den alter table ile bir alan eklemeye çalışıyorum herşey normal fakat user isminin başladığı karakterde sql hata veriyor

aynı kodu hiç değiştirmeden sadece tablo adının değiştirdiğim zaman istediğim alanı ekliyorum.

zannedersem firebird de user ismi başka bir anlam taşıyor.

bu tabloya bir şekilde bu alanı eklemem gerekiyor.önerileriniz tavsiyeleriniz benim için çok önemli

iyi çalışmalar diliyorum.
insanın özü tanımasına engel olan perdeleri;
1.kendini beden sanma
2.vehmî benlik
3.beş duyu blokajları
4.toplumsal şartlanmalar ve şartlanmaların oluşturduğu değer yargıları ve değer yargılarından gelen duygular
kişi bu perdelerden arınmadıkça göresel kozasında yaşar ve bir ipek böceği gibi kaynar kazana atılır.
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: sqlde sorun çıkaran tablo ismi

Mesaj gönderen conari »

tablo nasıl oluşmuş acaba?
MSSQL deki Modify yokmu, gerçi herhalikarda oradada kaydederken şarlar.
olmaz ise başka tablo oluştur birtane de bura ile master detail bağlarsın.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
dabaddah
Üye
Mesajlar: 167
Kayıt: 13 Mar 2008 04:42
Konum: istanbul

Re: sqlde sorun çıkaran tablo ismi

Mesaj gönderen dabaddah »

sevili conari kardeşim öncelikle ilgin ve değerli cevabın için çok teşekkür ederim

tabloyu oluştururken sorun çıkartmıyor firebird de neden böyle onu bilmiyorum

yeni tablo oluşturup master-detail bağlama olayı mantığıma pek yatmadı.

tam olarak nasıl bir mantık yürüttün acaba.
insanın özü tanımasına engel olan perdeleri;
1.kendini beden sanma
2.vehmî benlik
3.beş duyu blokajları
4.toplumsal şartlanmalar ve şartlanmaların oluşturduğu değer yargıları ve değer yargılarından gelen duygular
kişi bu perdelerden arınmadıkça göresel kozasında yaşar ve bir ipek böceği gibi kaynar kazana atılır.
Hakan Can
Üye
Mesajlar: 634
Kayıt: 04 Mar 2005 04:27
Konum: Ankara

Re: sqlde sorun çıkaran tablo ismi

Mesaj gönderen Hakan Can »

Tablo adını tırnak içinde yazarak dener misin?

Kod: Tümünü seç

ALTER TABLE "USER" ADD ADI VARCHAR(100);
Bir de SQL komutunu paylaşırsan, belki başka bir sorun da olabilir.

Kolay gelsin.
Kullanıcı avatarı
dabaddah
Üye
Mesajlar: 167
Kayıt: 13 Mar 2008 04:42
Konum: istanbul

Re: sqlde sorun çıkaran tablo ismi

Mesaj gönderen dabaddah »

sevgili kardeşim Hakan can ilgin ve cevabın için teşekkür ederim.

kullandığım sql kodu şöyle

Kod: Tümünü seç

alter table USER add davasil integer
aynı koddaki USER ifadesinin yerine veritabanındaki başka bir tablo adını yazdığımda istediğim alanı sorunsuz ekliyor.

o kodda şu şekilde

Kod: Tümünü seç

alter table DAVA add davasil integer
sonra senin dediğin tırnak içi kullanımıda denedim onlardada yine tırnaksız kullanımdaki aynı hatayı verdi yani user isminin başladığı karakterde hata verdi

Kod: Tümünü seç

  IBQuery1.SQL.Add('alter table '+#39'USER'#39+' add davasil integer');
  IBQuery1.SQL.Add('alter table '+QuotedStr('USER')+' add davasil integer');
insanın özü tanımasına engel olan perdeleri;
1.kendini beden sanma
2.vehmî benlik
3.beş duyu blokajları
4.toplumsal şartlanmalar ve şartlanmaların oluşturduğu değer yargıları ve değer yargılarından gelen duygular
kişi bu perdelerden arınmadıkça göresel kozasında yaşar ve bir ipek böceği gibi kaynar kazana atılır.
emin_as
Üye
Mesajlar: 559
Kayıt: 01 Eki 2008 10:05
Konum: izmir
İletişim:

Re: sqlde sorun çıkaran tablo ismi

Mesaj gönderen emin_as »

User sql standartlarında ayrılmış kelime olarak geçer.
Karışıklık olmasın diye KULLANICI veya USERSTABLE gibi sorun çıkarmayacak bir tablo ismi kullan.

http://www.firebirdsql.org/doc/contrib/ ... words.html
Hakan Can
Üye
Mesajlar: 634
Kayıt: 04 Mar 2005 04:27
Konum: Ankara

Re: sqlde sorun çıkaran tablo ismi

Mesaj gönderen Hakan Can »

Hocam tırnak işaretini yanlış kullanmışsın. Verdiğim örnekteki gibi tek olan değil çift olan karakter. Yani #34. Copy/Paste yaparsan daha net görürsün:

Kod: Tümünü seç

ALTER TABLE "USER" ADD ADI VARCHAR(100);
Ben çalıştığını test edip de yazmıştım.

Kolay gelsin.
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: sqlde sorun çıkaran tablo ismi

Mesaj gönderen sabanakman »

Çift tırnağa ilave olarak köşeli parantezler de işe yarayacaktır.

Kod: Tümünü seç

ALTER TABLE [USER] ADD ADI VARCHAR(100);
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
dabaddah
Üye
Mesajlar: 167
Kayıt: 13 Mar 2008 04:42
Konum: istanbul

Re: sqlde sorun çıkaran tablo ismi(ÇÖZÜLDÜ)

Mesaj gönderen dabaddah »

sevgili sabanakman kardeşim ilgin ve cevabın için teşekkür ederim.

köşeli parantez kullanımı işe yaramadı belki sql server değilde firebird olduğu içindir bilemiyorum.

ancak haklışmış hakan can kardeşim çift tırnak kullanımında sorun çözüldü.

ben delphide direk sql kodunun içinde tek tırnak kullanma alışkanlığımız #39 ile olduğu için o şekilde denemiştim. ondan dolayı hata devam etmişti

ama şimdi doğruca çift tırnak kullanımı sorunu çözdü.

Kod: Tümünü seç

runsql('ALTER TABLE "USER" ADD davasil integer');
çok teşekkürler cevap yazan herkese...

iyi çalışmalar.
insanın özü tanımasına engel olan perdeleri;
1.kendini beden sanma
2.vehmî benlik
3.beş duyu blokajları
4.toplumsal şartlanmalar ve şartlanmaların oluşturduğu değer yargıları ve değer yargılarından gelen duygular
kişi bu perdelerden arınmadıkça göresel kozasında yaşar ve bir ipek böceği gibi kaynar kazana atılır.
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: sqlde sorun çıkaran tablo ismi

Mesaj gönderen sabanakman »

SQL Server gibi algılamışım ondan oldu sanırım. O ara aklım yine 1 karış havadaymış :mrgreen: .
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
Battosai
Üye
Mesajlar: 1316
Kayıt: 01 Eki 2007 12:02
Konum: Ankara

Re: sqlde sorun çıkaran tablo ismi

Mesaj gönderen Battosai »

Çift tırnak, parantez falan görünce acaba unuttuk mu bu işi dedim meğerse MySQL kullandığımdan garip gelmiş zira MySQL de bunlara gerek yok. :)
Hakan Can
Üye
Mesajlar: 634
Kayıt: 04 Mar 2005 04:27
Konum: Ankara

Re: sqlde sorun çıkaran tablo ismi

Mesaj gönderen Hakan Can »

Hocam MySQL'de de mutlaka gerekir. Normal tırnak işareti değil de galiba tekli tırnak işareti (quotation mark).

Zira OBJECT (Table, Column, View, vs.) isimleri içinde özel karakter kullanıldığında (ğ,ş,ö,ü, boşluk karakteri vs.) veya tamamı özel komut (reserved word) olduğunda böyle yapmak zorundasınız.

Bunlar dışında isterseniz kullanmıyorsunuz.

Kolay gelsin.
Cevapla