26 Şubat 2016 Cuma

Primary Key Olmayan Tabloları Bulmak

Bu yazımda sizlere bir databasede Primary Keyi olmayan tabloları bulmanın kolay yolunu anlatmaya çalışacağım. Primary Key olmayan tabloları bulmanın bir çok yolu var. Ben üç tanesini yazmak istiyorum.

1.Yöntem
Bu yöntemde OBJECTPROPERTY  fonksiyonun TableHasPrimaryKey kullanarak tüm tabloları kontrol edilir ve Primary Key olmayan tespit edilir.

use [AdventureWorks2016CTP3]
go
SELECT
SCHEMA_NAME(schema_id) AS [Schema name] ,
name AS [Table name] FROM sys.tables
WHERE
OBJECTPROPERTY(object_id,'TableHasPrimaryKey') = 0



2.Yöntem
En kolay yöntem sys.object adlı viewin kontrol edilmesidir. En kolay yöntem budur.

use [AdventureWorks2016CTP3]
GO
SELECT
  SCHEMA_NAME(schema_id) AS [Schema name]
, name AS [Table name] FROM sys.objects
WHERE
[type]='U' AND object_id
NOT IN (
SELECT parent_object_id FROM sys.objects
WHERE [type]='PK' )




3.Yöntem
Bu yöntem ise sys.tables & sys.key_constraints adlı system viewlerini kullanmaktadır.

use [AdventureWorks2016CTP3]
GO
SELECT
SCHEMA_NAME(schema_id) AS [Schema name]
, name AS [Table name]
FROM sys.tables
WHERE object_id NOT IN
(
SELECT parent_object_id
FROM sys.key_constraints
WHERE type = 'PK'
);

Sql Server DateTime Veri Tipindeki Datayı Türkçe Formatında Göstermek

  SQL'de tarihleri farklı formatlarda göstermek için FORMAT fonksiyonunu kullanabilirsiniz. Türkçe kısa tarih formatı genellikle "...