identity_insert neden çalışmaz.

MS SQL Server veritabanı ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

identity_insert neden çalışmaz.

Mesaj gönderen aslangeri »

s.a. arkadaşlar...
sql serverda oluşturduğum bir tablonun pk alanına manuel bir değer girmek istiyotum. bunun için identity_insert komutunu kullanarak pk alana değer girmeye çalışıyorum ancak olmuyor.

Kod: Tümünü seç

set identity_insert RSATIS.dbo.Kullanicilar on
update RSATIS.dbo.Kullanicilar set id=-1
set identity_insert RSATIS.dbo.Kullanicilar off
komutu geriye
Cannot update identity column 'id'.
mesajını gönderiyor.
satır satır çalıştırdığım zaman update satırı hariç diğer iki satırı başarılı bir şekilde çalıştırıyor.
daha önce (başka bilgisayarda) bu komutu kullanmış vede bu şekilde çalıştırmış idim. ancak şimdi çalışmıyor neden acaba...
Serverda bu komutun çalışabilmesi için ayrı bir komut mu var ki?
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
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: identity_insert neden çalışmaz.

Mesaj gönderen sabanakman »

Malesef SQL Server'da Identity değerleri sonradan değiştirilmesi mümkün olmamaktadır. Kullandığınız kod, Insert sorgusu ile eklerken istenilen değerin eklenmesini sağlıyor ama mevcut kayıtlarda değişiklik yapmaya olanak sağlayan bir yol yok malesef. Kayıt illaki değişecekse yeni kayıt eklenip, eskisi silinmeli.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Re: identity_insert neden çalışmaz.

Mesaj gönderen aslangeri »

:duvar: :duvar: :duvar: :duvar: :alsana: :alsana: :alsana: :alsana:
@sabanakman; Teşekkür ederim.

Not: ifadeler sana değil mikropsoft a, yanlış anlaşılma olmasın..
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
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: identity_insert neden çalışmaz.

Mesaj gönderen sabanakman »

aslangeri yazdı:Not: ifadeler sana değil mikropsoft a, yanlış anlaşılma olmasın..
Açıklamaya gerek yok, daha mesajını okumadan anlamıştım ifadelerin adresini. Aslında ben de yapacaktım aynı hareketleri de kendimi zor tuttum :twisted: .
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
Kuri_YJ
Moderator
Mesajlar: 2248
Kayıt: 06 Ağu 2003 12:07
Konum: İstanbul
İletişim:

Re: identity_insert neden çalışmaz.

Mesaj gönderen Kuri_YJ »

Selamlar,

Biraz gecikmeli bir yanıt ama ben şöyle bir yöntem izliyordum, onu anlatayım belki işini görür.

Önce Tabloyu Enterprise Manager ile açıp, ID alanını Identity Column olmaktan çıkartıyorum ve kaydediyorum.

Daha sonra, istediğim kayıtlarda UPDATE'lerimi gerçekleştiriyorum.

Ardından tekrar Enterprise Manager ile girip, ilgili ID alanını tekrar Identity alan haline dönüştürüp kaydediyorum.

;) 8)

Kulağını biraz trersten göstermek oluyor ama böylelikle atlatmış oluyordum.

Kolay Gelsin
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Cevapla