SQL Server Tüm İndexler Rebuild

Veritabanında bulunan indexleri aşağıdaki script ile kolayca rebuild yapabilirsiniz

USE [VeritabanıAdı];
GO

DECLARE @TableName NVARCHAR(255);
DECLARE table_cursor CURSOR FOR 
SELECT name FROM sys.tables;

OPEN table_cursor;
FETCH NEXT FROM table_cursor INTO @TableName;

WHILE @@FETCH_STATUS = 0  
BEGIN  
       EXEC ('ALTER INDEX ALL ON ' + @TableName + ' REBUILD;');
       FETCH NEXT FROM table_cursor INTO @TableName; 
END;

CLOSE table_cursor;  
DEALLOCATE table_cursor; 
GO

MSSQL Rebuild Index , Sql Server Index Yenileme

MsSql deki index lerimizi zaman zaman rebuild yapıp indexleri yenilememiz gerekir bunuda aşağıdaki script ile gerçekleştirebilir siniz

USE [Database]
GO
ALTER INDEX [Index_Adı] ON [dbo].[Tablo Adı]
REBUILD PARTITION = ALL WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 10)
GO
SQl Kontrollü view ekleme scripti

Sql server da ekliyeceğimiz view kontrol eder var ise update satırının içinde view imizi oluşturur yok sa create view bloğundaki kodu çalıştırır ve view i database e ekler

IF NOT EXISTS(select * FROM sys.views where name = 'TEST')
BEGIN
    EXEC sp_executesql N'CREATE VIEW [dbo].[TEST]
AS
    SELECT * FROM TABLO WHERE ID > 100 '
END
ELSE
BEGIN
 
      EXEC sp_executesql N'  ALTER VIEW [dbo].[TEST] AS 
    SELECT * FROM TABLO WHERE ID > 100 '
 
END
SQL Kontollü Tabloya Index Ekleme

Sql Server da bir tabloda eklemek istediğimiz index yok ise index i oluşturur var ise herhangi bir işlem yapmaz

 IF NOT EXISTS( select * from sys.indexes where name = 'IND_CHAR_AKTARILDI')
BEGIN 
	EXEC sp_executesql N'CREATE NONCLUSTERED INDEX [IND_CHAR_AKTARILDI] ON [dbo].[CIHAZHAREKET] ([AKTARILDI])'
END

SQL Kontrollü tabloya alan ekleme

Sql server da tablo da alan yok ise alan ekleme var ise herhangi bir işlem yapmama scripti

IF NOT EXISTS(SELECT * FROM SYS.COLUMNS WHERE OBJECT_ID=OBJECT_ID('TABLOADI') AND NAME='ALANADI') 
BEGIN 
		ALTER TABLE TABLOADI  ADD ALANADI NVARCHAR(255)  
END

SQL Kontrollü tablo ekleme scripti

Sql server bir tablo database de yok ise tablo eklensin var ise eklenmesin işlemini yapmak için aşağıdaki script i kullanabiliriz

IF NOT OBJECT_ID('DATABASE.dbo.[TABLO]','U') IS NOT NULL
BEGIN
	CREATE TABLE [dbo].[TABLO](
		[ID] [int] NOT NULL,
		[ALAN1] [int] NULL,
		[ALAN2] [varchar](50) NULL,
				[OLTAR] [datetime] NULL,
		[OLUSER] [varchar](255) NULL,
			 CONSTRAINT [PK_PER_TRANSFER] PRIMARY KEY CLUSTERED 
	(
		[ID] ASC
	)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
	) ON [PRIMARY]
 
END