25 Ekim 2016 Salı

Dbcc CheckIdent Komut ile Identity Ayarlama

Eğer SQL Serverda tablonuz da identity specification açıksa ve delete komutu ile veri sildiyseniz yada başka bir sebepten dolayı  sayılar silinmeden önceki halinden artmaya devam edeceklerdir. Bu noktada eğer sayıların arttırımına müdahale etmek yada belli bir sayıdan devam etmesini istiyorsanız bu noktada

DBCC checkident ('Şema.TabloAd',reseed,10)

Yukarıdaki bu komutla belirttiğiniz tabloya sırada gelecek olan insert'un alacağı ilk değer 11 olacaktır.

Cannot truncate table ‘TabloAdi’ because it is being referenced by a FOREIGN KEY constraint Hatası


Eğer silmek istediğiniz tablo üzerinde primary key ve foreign key bağlantısı varsa bu noktada truncate  cümleciği Cannot truncate table ‘TabloAdi’ because it is being referenced by a FOREIGN KEY constraint hatasını döndürür. Bu noktada ya tablo üzerindeki pk-fk yapısını kaldırıp tabloyu truncate edip tekrardan oluşturmalısınız yada truncate'i kullanmak yerine delete cümleciği ile tablo içindeki verileri silmelisiniz. 

Constraint'i silmek için aşağıdaki kodu kullanabilirsiniz:

Alter Table [dbo].[TabloAdi]
Drop Constraint Constraint_adi

Tablo datalarını silmek için tekrardan çalıştırın
Truncate table [dbo].[TabloAdi]

1 Ekim 2016 Cumartesi

Cannot create trigger ' ' because its schema is different from the schema of the target table or view Hatası


 

MS SQL Server' da trigger'larda dikkat edilmesi gereken ayrıntılardan bir tanesi, trigger'ın üzerinde çalışacağı tablo ile oluşturacağınız trigger aynı şema altında olmalıdır. Eğer trigger'ı farklı bir şema üzerinde create edersiniz Cannot create trigger 'şema adı ' because its schema is different from the schema of the target table or view hatasını alırsınız.