Daha önceki yazıda PHP MySQL veritabanı bağlantısı oluşturmayı gösterim. Bu yazıyla da veritabanında tablo oluşturma konusuna değineceğim. Veritabanında bir veya daha fazla tablodan oluşturmak için aşağıdaki kodlara ve açıklamalara devam edelim.
Hadi, MySQL Tablosu oluşturmaya başlayalım.
Not: Tüm veritabanı tablosunun benzersiz bir adı vardır.
MySQLi ve PDO Kullanımı MySQL Tablosu Oluşturma
MySQL‘de tablo oluşturmak için CREATE TABLE deyimini kullanacağız.
1 2 3 4 5 6 7 8 9 10 |
CREATE TABLE `tbl_kayit` ( `tbl_kayit_id` INT(11) PRIMARY KEY AUTO_INCREMENT NOT NULL, `unvan` VARCHAR(100) NOT NULL, `adi` VARCHAR(100) NOT NULL, `soyadi` VARCHAR(100) NOT NULL, `email` VARCHAR(100) NOT NULL, `telefon` VARCHAR(100) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; |
Not: Her veritabanı tablosunda ayrı bir birincil anahtar vardır. Yukarıdaki örnek tabloda, ana anahtarımız “tbl_kayit_id” ve bu değer eşsizdir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
<?php $sunucuadi = "localhost"; $kadi = "kullanici"; //local kadi:root $sifre = "sifre";//local şifre:"" $vtadi = "vt_adi"; // Bağlantı oluştur $conn = new mysqli($sunucuadi, $kadi, $sifre, $vtadi); // Kontrol et if ($conn->connect_error) { die("Hata bağlantı sırasında bir sorun oluştu." . $conn->connect_error); } // SQL cümlesi $sql = "CREATE TABLE `tbl_kayit` ( `tbl_kayit_id` INT(11) PRIMARY KEY AUTO_INCREMENT NOT NULL, `unvan` VARCHAR(100) NOT NULL, `adi` VARCHAR(100) NOT NULL, `soyadi` VARCHAR(100) NOT NULL, `email` VARCHAR(100) NOT NULL, `telefon` VARCHAR(100) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8"; if ($conn->query($sql) === TRUE) { echo "tbl_kayit tablosu başaryıla eklendi!!!"; } else { echo "Sorgu yürütülürken bir sorun oluştu." . $conn->error; } $conn->close(); ?> |
MySQLi Kullanarak Veritabanı Tablosu Oluşturma (Prosedürel)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
<?php $sunucuadi = "localhost"; $kadi = "kullanici"; //local kadi:root $sifre = "sifre";//local şifre:"" $vtadi = "vt_adi"; // bağlantı oluşturma $conn = mysqli_connect($sunucuadi, $kadi, $sifre, $vtadi); // bağlantı kontrol if (!$conn) { die("Bağlantı hatası." . mysqli_connect_error()); } // SQL tablo sorgusu $sql = "CREATE TABLE `tbl_kayit` (<br /> `tbl_kayit_id` INT(11) PRIMARY KEY AUTO_INCREMENT NOT NULL,<br /> `unvan` VARCHAR(100) NOT NULL,<br /> `adi` VARCHAR(100) NOT NULL,<br /> `soyadi` VARCHAR(100) NOT NULL,<br /> `email` VARCHAR(100) NOT NULL,<br /> `telefon` VARCHAR(100) NOT NULL<br />) ENGINE=InnoDB DEFAULT CHARSET=utf8"; if (mysqli_query($conn, $sql)) { echo "Sorgu başarıyla gerçekleştirildi!!!"; } else { echo "Sorgu hatası. Sorguyu kontrol edin." . mysqli_error($conn); } mysqli_close($conn); ?> |
PDO Kullanarak Veritabanı Tablosu Oluşturma (PHP Veri Nesneleri)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
<?php $sunucuadi = "localhost"; $kadi = "kullanici"; //local kadi:root $sifre = "sifre";//local şifre:"" $vtadi = "vt_adi"; // bağlantı oluşturma try { $conn = new PDO("mysql:host=$sunucuadi;dbname=$vtadi", $kadi, $sifre); // Hata modunu etkinleştirme $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // sql cümlesi $sql = "CREATE TABLE `tbl_kayit` ( `tbl_kayit_id` INT(11) PRIMARY KEY AUTO_INCREMENT NOT NULL, `unvan` VARCHAR(100) NOT NULL, `adi` VARCHAR(100) NOT NULL, `soyadi` VARCHAR(100) NOT NULL, `email` VARCHAR(100) NOT NULL, `telefon` VARCHAR(100) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8"; // exec() kullanın, çünkü her hangi bir kayıt döneyecektir. $conn->exec($sql); echo "Tablo başarıyla oluşturuldu!!!"; } catch(PDOException $e) { echo $sql . "<br>" . $e->getMessage(); } $conn = null; ?> |
İşte bu kadar. Veritabanında bir tablo var. Ayrıca veritabanınızda daha fazla tablo oluşturabilirsiniz. Bir sonraki derste, MySQL’deki PHP Insert Verilerini öğreneceğiz.
Yorum Yap