SQL etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
SQL etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

17 Şubat 2010 Çarşamba

Tabloların ve alanların açıklamalarını ce veri tiplerini sql server 2008 de alabilmek için script

SELECT


sys.objects.name AS [Table Name],

sys.columns.name AS [Column Name],

sys.extended_properties.value AS [Description],

(select name +'('+CAST( sys.columns.max_length as varchar(20))+')' from sys.types t

where t.user_type_id=sys.columns.user_type_id)

FROM sys.extended_properties

LEFT OUTER JOIN sys.objects ON sys.extended_properties.major_id = sys.objects.object_id

LEFT OUTER JOIN sys.columns ON sys.extended_properties.major_id = sys.columns.object_id AND sys.extended_properties.minor_id = sys.columns.column_id

--WHERE sys.objects.name='tablo adı'

ORDER BY sys.objects.name, sys.columns.name

30 Nisan 2007 Pazartesi

Insert Edilen null olabilsin vede unique olmalı olsun diyorsanız 2 yontem:

 

------------------------1

CREATE VIEW view_mt_pch_trademark

 WITH SCHEMABINDING

 AS

  SELECT notes

   FROM dbo.mt_pch_trademark

   WHERE notes IS NOT NULL

GO

 

 

 

 

CREATE UNIQUE CLUSTERED INDEX INX_view_mt_pch_trademark

 ON view_mt_pch_trademark(notes)

 

-----------------------------2

 

 

CREATE TABLE Table1

(cID INTEGER PRIMARY KEY

 , c1 INTEGER NULL

 , foolme AS (CASE WHEN c1 IS NULL THEN cID END)

 , CONSTRAINT cc1 UNIQUE (c1,foolme)

)

 

INSERT INTO Table1

SELECT 1, 1

UNION ALL

SELECT 2, NULL

UNION ALL

SELECT 3, NULL

SET NOCOUNT OFF

SELECT * FROM Table1

 

 

 

 

24 Nisan 2007 Salı

ORACLE 10G EXPDP-İMPDP İLE DAHA HIZLI YEDEKLEME VE GERİ DÖNÜŞ [oracle exdp-impdp backup and restore]

ORACLE 10G EXPDP-İMPDP İLE DAHA HIZLI YEDEKLEME VE GERİ DÖNÜŞ

Bu makalede Oracle 10g veritabanının yedeklenmesi ve geri yüklenmesi için kullanılabilecek datapump aracı anlatılıştır. Oracle Data Pump veri aktarımında daha yeni ve daha hızlı bir araç olarak karşımıza geliyor.  Böylece yedek alma zamanı bir kaç kat azalabilmektedir.

Yapılan testlerde dışarı veri aktarımında (expdp) 10-15 kat daha hızlı içeri veri aktarımında (impdp) 5 kat daha hızlı veri aktarımı sağlandığı görülmüştür.

Data Pump aracı sadece anabilgisayardaki klasorde yedek alıp geri yükleme yapabilmektedir.Şimdi adım adım veritbanının yedeğini alalım:

 

1.      Sqlplus ile login olun:
sqlplus "sys/masterkey@medin as sysdba"

1.      Anabilgisayarda hangi klasoru kullanacağınızı belirtin:
SQL> create directory yedekKlasoru as ‘c:\yedek\’;

2.      Yedek alınacak kullanıcıya klasörü okuma-yazma hakkı verin:
SQL> grant read, write on directory yedekKlasoru to AKADEMI;

Şimdi AKADEMI şemasının yedeğini alalım.Serverda komut satırına aşağıdaki komutu yazın:
expdp AKADEMI/masterkey@MEDIN directory=yedekKlasoru dumpfile=akademi%date%.dmp job_name=akademiYedegi

Şimdi expdp komutunu biraz inceleyelim.

expdp

AKADEMI/masterkey@MEDIN Exp komutunda olduğu gibi kullanıcı adı şifreyi girdiğimiz kısım.

directory=yedekKlasoru                  Serverda yaratıp hak verdiğimiz klasör. dumpfile=akademi%date%.dmp             Klasör içinde yaratılacak dosya adı.

job_name=akademiYedegi              Daha sonra dakip için iş adı.(Gerekli deyil)

Daha fazla parametre için expdp –help yazabilirsiniz. Export esnasında ctrl+C’ye basılsa bile yedek işi arka planda çalışmaya devameder. Ctrl+C ye bastığınızda
Export> moduna düşersiniz. Bu modda iken status yazarsanız işin durumunu görürsünüz. Ctrl+C öncesindeki log gösterim moduna dönmek için CONTINUE_CLIENT yazın.

 

expdp ananda/abc123 tables=CASES directory=DPDATA1

dumpfile=expCASES_%U.dmp parallel=4 job_name=Cases_Export

Çok işlemcili anabilgisayarlarda paralel=4 yazarak hızlandırabilirsiniz.

İmport aşşağıdaki komutu yazabilirsiniz.

impdp SAMATYA/masterkey directory=yedekKlasoru dumpfile=04.01.2006.dmp job_name=importIsi

 

Eğer var olan tabloların üzerine yazmasını istiyorsanız TABLE_EXISTS_ACTION=APPEND komutunu yazmalısınız.

 

 

 

 

 

Mahmut HAKTAN

4t Sağlık ve bilgi işlem hizmetleri

Sistem sorumlusu & DBA

Biomedical Engineer,M.S.

Tel:   0216 413 51 21

Faks: 0216 413 51 41

www.4tbilisim.com

 

 

20 Nisan 2007 Cuma

Tablo Kullanımlarını Getiren Sql [sql server 2005] (Shows usage of tables)

CREATE TABLE #temp_Table ( tablename sysname ,row_count INT ,reserved VARCHAR(50) collate database_default ,data VARCHAR(50) collate database_default ,index_size VARCHAR(50) collate database_default ,unused VARCHAR(50) collate database_default )
declare @sql varchar(max)declare cSql CURSOR FOR select name [SQL]from sys.tables
OPEN cSqlFETCH NEXT FROM cSql INTO @sql WHILE @@FETCH_STATUS = 0 BEGIN INSERT INTO #temp_Table EXEC sp_spaceused @sql, false; -- select @sql FETCH NEXT FROM cSql INTO @sql END CLOSE cSql DEALLOCATE cSql select * from #temp_Tableorder by row_count descdrop TABLE #temp_Table