- İSİM
 - CREATE DATABASE — yeni bir veritabanı oluşturur
 - KULLANIM
 CREATE DATABASE isim
     [ [ WITH ] [ OWNER [=] dbsahibi ]
           [ TEMPLATE   [=] şablon ]
           [ ENCODING   [=] kodlama ]
           [ TABLESPACE [=] tablo_alanı ] ]
- Açıklama
 
CREATE DATABASE yeni bir PostgreSQLTM veritabanı oluşturur.
  
Bir veritabanını oluşturmak için ya ayrıcalıklı kullanıcı olmalısınız ya da 
CREATEDB izniniz olmalıdır (
CREATE USER[create_user(7)] kılavuz sayfasına bakınız).
  
Normalde yeni bir veritabanı oluşturan aynı zamanda bu veritabanının sahibi olur. Ayrıcalıklı kullanıcılar OWNER deyimini kullanarak başka kullanıcılar adına veritabanı oluşturabilirler. Hatta özel izinleri olmayan kullanıcılar için bile bunu yapabilirler. CREATEDB yetkisi olan sıradan kullanıcılar sadece kendi veritabanlarını oluşturabilirler.
  
Öntanımlı olarak, yeni bir veritabanı standart sistem veritabanı olan template1 veritabanının bir kopyası olarak oluşturulur. TEMPLATE isim deyimi kullanılarak farklı bir şablon belirtilebilir. Özel bir durum olarak, TEMPLATE template0 ile sadece PostgreSQL tarafından tanımlanmış standart nesneleri içeren bakir bir veritabanı oluşturabilirsiniz. Bu, template1'e eklenen kuruluma özgü nesnelerin veritabanınıza kopyalanmasını istemediğiniz durumlarda yararlıdır.
  
- Parametreler
 - isim
 Oluşturulacak veritabanının ismi.
      
- dbsahibi
 Yeni veritabanının sahibi olacak kullanıcı. Veritabanını oluşturan kullanıcıyı belirtmek için DEFAULT kullanılır.
      
- şablon
 Yeni veritabanını oluştururken kullanılacak şablonun ismi. Öntanımlı şablon (template1) kullanılacaksa değer olarak DEFAULT belirtilir.
      
- kodlama
 Yeni veritabanında kullanılacak karakter kümesinin kodlaması. Bir dizge sabiti (
'SQL_ASCII' gibi), bir tamsayı kodlama numarası ya da öntanımlı kodlamayı kullanmak için 
DEFAULT belirtilebilir. PostgreSQL sunucusu tarafından desteklen karakter kümeleri
http://www.postgresql.org/docs/8.0/static/multibyte.html adresinde açıklanmıştır.
      
- tablo_alanı
 Yeni veritabanı ile ilişkilendirilecek tablo alanının ismi. Şablon veritabanının tablo alanı kullanılacaksa, 
DEFAULT belirtilebilir. Bu tablo alanı bu veritabanında oluşturulan neseneler için öntanımlı tablo alanı olacaktır. Daha fazla bilgi için 
CREATE TABLESPACE[create_tablespace(7)] kılavuz sayfasına bakınız.
      
İsteğe bağlı parametrelerin yukarıda belirtilen sırada yazılması şart değildir, istediğiniz sırada yazabilirsiniz.
  
- Ek Bilgi
 
CREATE DATABASE bir hareket kümesinin içinde bulunamaz.
   
"veritabanı dizini ilklendirilemedi" (could not initialize database directory) satırı bulunan hatalar çoğunlukla veri dizininde yeterli izinlerin olmaması, diskin dolmuş olması ya da diğer dosya sistemi sorunlarıyla ilgilidir.
   
creatdb(1) uygulaması bu komutun yerine kullanılabilir, rahatlık için sağlanmıştır.
   
Şablon olarak öntanımlı 
template1 veritabanı yerine ismi belirtilerek başka bir veritabanın belirtilebilmesi, genel amaçlı olan 
COPY DATABASE yerine kullanılabilecekmiş gibi düşünülmemelidir; bu amaçla (henüz) tasarlanmamıştır. Şablon olarak kullanılan veritabanlarını salt okunur olarak düşünmenizi öneririz. Daha fazla bilgi için
http://www.postgresql.org/docs/8.0/static/manage-ag-templatedbs.html adresinde bakınız.
  
- Örnekler
 
Yeni bir veritabanı oluşturmak için:
  
    CREATE DATABASE lusiadas;
 
  
Öntanımlı salesspace tablo alanlı, sahibi salesapp kullanıcısı olacak sales veritabanını oluşturmak için:
  
    CREATE DATABASE sales OWNER salesapp TABLESPACE salesspace;
 
  
ISO-8859-1 karakter kümesini destekleyen music veritabanını oluşturmak için:
  
    CREATE DATABASE music ENCODING 'LATIN1';
 
  - Uyumluluk
 
SQL standardında CREATE DATABASE diye bir deyim yoktur. Veritabanları, oluşturulması gerçeklenim tanımlı kataloglara eşdeğerdir.
  
- Çeviren
 
Nilgün Belma Bugüner <nilgun (at) belgeler·gen·tr>, Nisan 2005