Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
yokname
Üye
Mesajlar: 77 Kayıt: 17 Nis 2005 08:16
Konum: izmir
Mesaj
gönderen yokname » 06 Haz 2005 11:29
Merhaba arkadaşlar bir sorunum var
Kod: Tümünü seç
insert into meslek (m_no,meslek)values(max(m_no)+1,aaaa);
bu mantıkla autoinc alan yapmaya çalışıyorum ama
hatası veriyor.
Doğru yazımını bulamadım.
Şimdiden teşekkür ederim...
Ali Erdoğan
Kıdemli Üye
Mesajlar: 1026 Kayıt: 11 Şub 2005 02:12
Konum: İstanbul
Mesaj
gönderen Ali Erdoğan » 06 Haz 2005 11:52
Kod: Tümünü seç
insert into meslek (m_no,meslek)values(select max(m_no)+1 as enbuyuk from meslek,'aaaa');
Çalışırmı bilmiyorum ancak çalışıyorsa böyle bir yazım uygundur.
yokname
Üye
Mesajlar: 77 Kayıt: 17 Nis 2005 08:16
Konum: izmir
Mesaj
gönderen yokname » 06 Haz 2005 12:08
Direk sql çalıştı ama delphide çalışmadı. kodlar:
Kod: Tümünü seç
with dm.meslekq do
begin
try
close;
sql.clear;
sql.add('insert into meslek (m_no,meslek)values((select max(m_no)+1 from meslek),:meslek)');
ParamByName('meslek').AsString:=Edit2.text;
ExecSQL;
finally
label3.caption:='Kayıt Eklendi'
end;
primary key hatası verdi...
Kuri_YJ
Moderator
Mesajlar: 2248 Kayıt: 06 Ağu 2003 12:07
Konum: İstanbul
İletişim:
Mesaj
gönderen Kuri_YJ » 06 Haz 2005 12:41
Selamlar,
Hangi SQL VT Kullanıyorsunuz?
Kolay Gelsin
yokname
Üye
Mesajlar: 77 Kayıt: 17 Nis 2005 08:16
Konum: izmir
Mesaj
gönderen yokname » 06 Haz 2005 12:58
interbase kullanıyorum...
Kuri_YJ
Moderator
Mesajlar: 2248 Kayıt: 06 Ağu 2003 12:07
Konum: İstanbul
İletişim:
Mesaj
gönderen Kuri_YJ » 06 Haz 2005 01:19
Selamlar,
1. Önerim, O zaman Generator kullanın,
2. Önerim PrimaryKey hatası alıyorsanız, kayıtlarda çiftleme (Yani bir başka biçimde PrimaryKey olarak belirlediğiniz alan tekrar eden bir bilgi içeriyor demektir. Bu sebeple Primary Key alan veya alanlarınızı gözden geçirin.
Kolay Gelsin
yokname
Üye
Mesajlar: 77 Kayıt: 17 Nis 2005 08:16
Konum: izmir
Mesaj
gönderen yokname » 06 Haz 2005 01:52
Bunu generator yada procedure ilede yapabilirim ama boyle yapmam gerek mantık doğru görünüyor sql çalışıyor ama delphide hata veriyor.
Ali Erdoğan
Kıdemli Üye
Mesajlar: 1026 Kayıt: 11 Şub 2005 02:12
Konum: İstanbul
Mesaj
gönderen Ali Erdoğan » 06 Haz 2005 05:50
primery key ne hatası veriyor?Null olduğu için mi?Tekrar ettiği için mi?
Generator neden kullanmıyorsun?
yokname
Üye
Mesajlar: 77 Kayıt: 17 Nis 2005 08:16
Konum: izmir
Mesaj
gönderen yokname » 06 Haz 2005 06:20
Tekrar Hatası veriyor arkadaşım.
generator kullanmamın sebebide bu benim sene sonu ödevim mantığı kavrayabilmemiz için boyle yapmamız gerekiyormuş.Ondan değiştiremiyorum.kayıt eklerken max numaranın bir üstünü eklemem gerekiyor.
Burada kitlendim kaldım...
Uğur1982
Üye
Mesajlar: 383 Kayıt: 11 Mar 2005 03:18
Konum: İzmir
Mesaj
gönderen Uğur1982 » 06 Haz 2005 06:34
merhaba;
Bu kod çalışması lazım;
Null sorunu var diyorsan;
Kod: Tümünü seç
(select max(m_no)+1 from meslek where m_no is not null)
dersin olur biter
iyi akşamlar...