MySQL'de Veritabanı Oluşturma Adımları
İki şekilde Veritabanı oluşturun
1) Basit bir SQL sorgusu yürüterek
2) MySQL Workbench'te ileri mühendislik kullanarak
Bu SQL Eğitiminde şunları öğreneceksiniz:
- Veritabanı Nasıl Oluşturulur
- MySQL'de Tablo Nasıl Oluşturulur
- Veri tipleri
- MySQL çalışma tezgahı ER diyagramı ileri Mühendislik
SQL acemi olarak önce sorgu yöntemine bakalım.
Veritabanı Nasıl Oluşturulur
MySQL'de bir veritabanı nasıl oluşturulur:
CREATE DATABASE, MySQL'de bir veritabanı oluşturmak için kullanılan SQL komutudur.
"Filmler" adıyla bir veritabanı oluşturmanız gerektiğini düşünün. Aşağıdaki SQL komutunu çalıştırarak MySQL'de bir veritabanı oluşturabilirsiniz.
CREATE DATABASE movies;
Not: CREATE DATABASE yerine CREATE SCHEMA komutunu da kullanabilirsiniz.
Şimdi SQL sorgumuzu daha fazla parametre ve özellik ekleyerek geliştirelim.
MEVCUT DEĞİLSE
Tek bir MySQL sunucusunun birden çok veritabanı olabilir. Aynı MySQL sunucusuna erişen tek kişi siz değilseniz veya birden fazla veri tabanıyla uğraşmanız gerekiyorsa, mevcut bir veri tabanının adıyla yeni bir veri tabanı oluşturmaya çalışma olasılığı vardır. IF NOT EXISTS , MySQL sunucusuna, veritabanı oluşturmadan önce benzer ada sahip bir veritabanının varlığını kontrol etme talimatı vermenizi sağlar.
Ne zaman IF NOT EXISTS verilen isimdir varolan veritabanının adı ile çatışma değil, yalnızca kullanılan veritabanı oluşturulur edilir. IF NOT EXISTS kullanımı olmadan MySQL bir hata atar.
CREATE DATABASE IF NOT EXISTS movies;
Harmanlama ve Karakter Seti
Harmanlama , karşılaştırmada kullanılan kurallar kümesidir . Çoğu kişi MySQL'i İngilizce dışındaki verileri depolamak için kullanır. Veriler, belirli bir karakter seti kullanılarak MySQL'de saklanır. Karakter seti, farklı seviyelerde, yani sunucu, veritabanı, tablo ve sütunlarda tanımlanabilir.
Sırasıyla seçilen karakter setine bağlı olan harmanlama kurallarını seçmeniz gerekir.
Örneğin, Latin1 karakter seti,
latin1_swedish_ci
İsveç büyük harf duyarlı olmayan sıralaması olan harmanlama.
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci
Arapça, Çince vb. Gibi yerel dilleri kullanırken en iyi uygulama, birkaç harmanlamaya sahip Unicode (utf-8) karakter kümesini seçmektir veya sadece varsayılan harmanlama utf8-general-ci'ye sadık kalmaktır.
Tüm harmanlamaların ve karakter kümelerinin listesini burada bulabilirsiniz
Aşağıdaki SQL komutunu çalıştırarak mevcut veritabanlarının listesini görebilirsiniz.
SHOW DATABASES
MySQL'de Tablo Nasıl Oluşturulur
CREATE TABLE komutu, bir veritabanında tablolar oluşturmak için kullanılır
Tablolar, CREATE TABLE deyimi kullanılarak oluşturulabilir ve aslında aşağıdaki sözdizimine sahiptir.
CREATE TABLE [IF NOT EXISTS] `TableName` (`fieldname` dataType [optional parameters]) ENGINE = storage Engine;
İŞTE
- Veritabanında tablonun oluşturulmasından sorumlu olan "CREATE TABLE" dir.
- "[MEVCUT DEĞİLSE]" isteğe bağlıdır ve yalnızca eşleşen tablo adı bulunamazsa tabloyu oluşturun.
- "" alanAdı ", alanın adıdır ve" veri Türü ", alanda depolanacak verilerin doğasını tanımlar.
- "AUTO_INCREMENT", NOT NULL vb. gibi bir alan hakkında "[isteğe bağlı parametreler]" ek bilgiler.
MySQL Tablo Oluşturma Örneği
Aşağıda, veritabanında bir tablo oluşturmak için bir MySQL örneği verilmiştir:
CREATE TABLE IF NOT EXISTS `MyFlixDB`.`Members` (`membership_number` INT AUTOINCREMENT ,`full_names` VARCHAR(150) NOT NULL ,`gender` VARCHAR(6) ,`date_of_birth` DATE ,`physical_address` VARCHAR(255) ,`postal_address` VARCHAR(255) ,`contact_number` VARCHAR(75) ,`email` VARCHAR(255) ,PRIMARY KEY (`membership_number`) )ENGINE = InnoDB;
Şimdi MySQL'in veri türlerinin ne olduğunu görelim. İhtiyacınıza göre bunlardan herhangi birini kullanabilirsiniz. Bir veritabanı oluştururken her zaman potansiyel veri aralığını küçümsememeye veya abartmamaya çalışmalısınız.
VERİ TİPLERİ
Veri türleri, bir tablonun belirli bir sütununda depolanabilen verilerin doğasını tanımlar
MySQL'in 3 ana veri türü kategorisi vardır:
- Sayısal,
- Metin
- Tarih / saat.
Sayısal Veri türleri
Sayısal veri türleri, sayısal değerleri depolamak için kullanılır. Verilerinizin aralığının sayısal veri türlerinin alt ve üst sınırları arasında olduğundan emin olmak çok önemlidir.
TINYINT () | -128 ila 127 normal 0 ila 255 İMZASIZ |
SMALLINT () | -32768 ila 32767 normal 0 ila 65535 İMZALANMADI. |
MEDIUMINT () | -8388608 ila 8388607 normal 0 ila 16777215 İMZALANMADI. |
INT () | -2147483648 - 2147483647 normal 0 - 4294967295 İMZALANMADI. |
BÜYÜK () | -9223372036854775808 ila 9223372036854775807 normal 0 ila 18446744073709551615 İmzalanmamış. |
YÜZER | Kayan ondalık noktalı yaklaşık küçük bir sayı. |
ÇİFT (,) | Kayan ondalık noktası olan büyük bir sayı. |
ONDALIK (,) | Sabit bir ondalık basamağa izin veren bir dizi olarak saklanan bir DOUBLE. Para birimi değerlerini saklama seçeneği. |
Metin Veri Türleri
Veri türü kategori adının ima ettiği gibi, bunlar metin değerlerini depolamak için kullanılır. Metin verilerinizin uzunluğunun maksimum uzunlukları aşmadığından daima emin olun.
KARAKTER () | 0 ila 255 karakter uzunluğunda sabit bir bölüm. |
VARCHAR () | 0 ila 255 karakter uzunluğunda değişken bir bölüm. |
TINYTEXT | Maksimum uzunluğu 255 karakter olan bir dize. |
METİN | Maksimum uzunluğu 65535 karakter olan bir dize. |
BLOB | Maksimum uzunluğu 65535 karakter olan bir dize. |
ORTA METİN | Maksimum uzunluğu 16777215 karakter olan bir dize. |
MEDIUMBLOB | Maksimum uzunluğu 16777215 karakter olan bir dize. |
UZUN METİN | Maksimum uzunluğu 4294967295 karakter olan bir dize. |
LONGBLOB | Maksimum uzunluğu 4294967295 karakter olan bir dize. |
Tarih / Saat
TARİH | YYYY-AA-GG |
DATETIME | YYYY-AA-GG SS: DD: SS |
TIMESTAMP | YYYYAAGGSSMSS |
ZAMAN | SS: DD: SS |
Yukarıdakilerin dışında MySQL'de başka veri türleri de vardır.
SIRALAMA | Önceden tanımlanmış metin değerleri listesinden seçilen metin değerini saklamak için |
AYARLAMAK | Bu, önceden tanımlanmış metin değerleri listesinden seçilen metin değerlerini depolamak için de kullanılır. Birden çok değeri olabilir. |
BOOL | Boole değerlerini saklamak için kullanılan TINYINT (1) ile eşanlamlıdır |
İKİLİ | CHAR'a benzer şekilde, fark, metinlerin ikili biçimde saklanmasıdır. |
DEĞİŞKEN | VARCHAR'a benzer şekilde, fark, metinlerin ikili biçimde depolanmasıdır. |
Şimdi tüm veri türlerinin verilerini içeren bir tablo oluşturmak için bir sorgu görelim. Bunu inceleyin ve aşağıdaki MySQL tablosu oluşturma örneğinde her bir veri türünün nasıl tanımlandığını belirleyin.
CREATE TABLE`all_data_types` (`varchar` VARCHAR( 20 ) ,`tinyint` TINYINT ,`text` TEXT ,`date` DATE ,`smallint` SMALLINT ,`mediumint` MEDIUMINT ,`int` INT ,`bigint` BIGINT ,`float` FLOAT( 10, 2 ) ,`double` DOUBLE ,`decimal` DECIMAL( 10, 2 ) ,`datetime` DATETIME ,`timestamp` TIMESTAMP ,`time` TIME ,`year` YEAR ,`char` CHAR( 10 ) ,`tinyblob` TINYBLOB ,`tinytext` TINYTEXT ,`blob` BLOB ,`mediumblob` MEDIUMBLOB ,`mediumtext` MEDIUMTEXT ,`longblob` LONGBLOB ,`longtext` LONGTEXT ,`enum` ENUM( '1', '2', '3' ) ,`set` SET( '1', '2', '3' ) ,`bool` BOOL ,`binary` BINARY( 20 ) ,`varbinary` VARBINARY( 20 )) ENGINE= MYISAM ;
En iyi uygulamalar
- SQL anahtar sözcükleri için büyük harfler kullanın, örn. "VARSA ŞEMASI DROP" MyFlixDB ";
- Noktalı virgül kullanarak tüm SQL komutlarınızı sonlandırın.
- Şema, tablo ve alan adlarında boşluk kullanmaktan kaçının. Şema, tablo veya alan adlarını ayırmak için bunun yerine alt çizgi kullanın.
MySQL çalışma tezgahı ER diyagramı ileri mühendislik
MySQL çalışma tezgahı ileri mühendisliği destekleyen yardımcı programlara sahiptir. İleri mühendislik , teknik bir terimdir, mantıksal bir modeli otomatik olarak fiziksel bir uygulamaya dönüştürme sürecini tanımlamaktır .
ER modelleme eğitimimizde bir ER diyagramı oluşturduk. Şimdi bu ER modelini veritabanımızı oluşturacak SQL betikleri oluşturmak için kullanacağız.
MyFlix ER modelinden MyFlix veritabanı oluşturma
1. Önceki eğitimde oluşturduğunuz MyFlix veritabanının ER modelini açın.
2. Veritabanı menüsüne tıklayın. İleri mühendisi seçin
3. Bir sonraki pencere, MySQL sunucusunun bir örneğine bağlanmanıza izin verir. Depolanan bağlantı açılır listesine tıklayın ve yerel ana bilgisayarı seçin. Yürüt'ü tıklayın
4. Görünen sihirbazda aşağıda gösterilen seçenekleri seçin. Sonrakine tıkla
5. Bir sonraki ekran, EER diyagramımızdaki nesnelerin özetini gösterir. MyFlix DB'mizde 5 tablo vardır. Seçimleri varsayılan olarak tutun ve İleri'ye tıklayın.
6… Aşağıda gösterilen pencere açılır. Bu pencere, veritabanımızı oluşturmak için SQL betiğini önizlemenizi sağlar. Scriptleri bir * .sql "dosyasına kaydedebilir veya scriptleri panoya kopyalayabiliriz. Next butonuna tıklayın
7. Aşağıda gösterilen pencere, seçilen MySQL sunucu örneğinde veritabanı başarıyla oluşturulduktan sonra görünür.
Özet
- Bir veritabanı oluşturmak, mantıksal veritabanı tasarım modelini fiziksel veritabanına dönüştürmeyi içerir.
- MySQL, sayısal değerler, tarihler ve dizeler değerleri için bir dizi veri türünü destekler.
- CREATE DATABASE komutu bir veritabanı oluşturmak için kullanılır
- CREATE TABLE komutu, bir veritabanında tablolar oluşturmak için kullanılır
- MySQL çalışma tezgahı, fiziksel veritabanını oluşturmak için yürütülebilen mantıksal veritabanı modelinden otomatik olarak SQL betikleri oluşturmayı içeren ileri mühendisliği destekler
Veritabanı, Sahte Veriler ile birlikte eklenmiştir. Bu DB'yi tüm diğer eğitimlerimiz için kullanacağız. Başlamak için DB'yi MySQL Workbench'e basitçe içe aktarın
MyFlixDB'yi İndirmek İçin Buraya Tıklayın