PHP ສ້າງຖານຂໍ້ມູນ MySQL
- ບ່ອນໜ້າຫນ້າກ່ອນ MySQL Connect
- ບ່ອນໜ້າຫນ້າທ້າຍ MySQL Insert
ຖານຂໍ້ມູນມີກິດຕັ້ງໜຶ່ງຫລືຫລາຍອັນ.
ສ້າງຖານຂໍ້ມູນ
ຄຳສັ່ງ CREATE DATABASE ຖືກນຳໃຊ້ເພື່ອສ້າງຖານຂໍ້ມູນໃນ MySQL.
ຂອງການນຳໃຊ້
CREATE DATABASE database_name
ເພື່ອສາມາດດຳເນີນຄຳສັ່ງນີ້ໃນ PHP, ພວກເຮົາຕ້ອງໃຊ້ຫົວຫນ້າ mysql_query() ທີ່. ຫົວຫນ້ານີ້ຖືກນຳໃຊ້ເພື່ອສົ່ງຄຳສັ່ງຫລືຄຳສັ່ງໄປຫາການເຊື່ອມຕໍ່ MySQL.
ຕົວຢ່າງ
ໃນບົດຢ່າງດັ່ງລຸ່ມນີ້, ພວກເຮົາສ້າງຖານຂໍ້ມູນທີ່ຊື່ "my_db":
<?php $con = mysql_connect("localhost","peter","abc123"); if (!$con) { die('Could not connect: ' . mysql_error()); } if (mysql_query("CREATE DATABASE my_db",$con)) { echo "Database created"; } else { echo "Error creating database: " . mysql_error(); } mysql_close($con); ?>
ສ້າງຖານຂໍ້ມູນ
CREATE TABLE ຖືກນຳໃຊ້ເພື່ອສ້າງຖານຂໍ້ມູນໃນ MySQL.
ຂອງການນຳໃຊ້
CREATE TABLE table_name ( column_name1 data_type, column_name2 data_type, column_name3 data_type, ....... )
ເພື່ອດຳເນີນຄຳສັ່ງນີ້, ຂ້ອຍຕ້ອງໃຫ້ຄຳສັ່ງ CREATE TABLE ໃຫ້ກັບຫົວຫນ້າ mysql_query() ທີ່.
ຕົວຢ່າງ
ບົດຢ່າງດັ່ງລຸ່ມນີ້ສະແດງວ່າແນວໃດທີ່ຈະສ້າງຖານຂໍ້ມູນທີ່ຊື່ "Persons" ມີສາມກິດຕັ້ງ. ຊື່ກິດຕັ້ງແມ່ນ "FirstName", "LastName" ແລະ "Age":
<?php $con = mysql_connect("localhost","peter","abc123"); if (!$con) { die('Could not connect: ' . mysql_error()); } // ສ້າງຖານຂໍ້ມູນ if (mysql_query("CREATE DATABASE my_db",$con)) { echo "Database created"; } else { echo "Error creating database: " . mysql_error(); } // Create table in my_db database mysql_select_db("my_db", $con); $sql = "CREATE TABLE Persons ( ຊື່ຜູ້ບັນຊາ varchar(15), ຊື່ສະມາຊິກ varchar(15), ອາຍຸ int )"; mysql_query($sql,$con); mysql_close($con); ?>
ຄວາມສໍາຄັນ:ກ່ອນທີ່ເຈົ້າຈະສ້າງຕະຫຼາດ, ເຈົ້າຕ້ອງເລືອກພື້ນຖານຂອງຂໍ້ມູນຂອງຂໍ້ມູນ. ຜ່ານຕາມຫົວຂໍ້ mysql_select_db() ທີ່ເລືອກພື້ນຖານຂອງຂໍ້ມູນ.
ຄວາມເຫັນ:ເມື່ອເຈົ້າສ້າງພື້ນຖານຂອງວັດຖຸ varchar, ເຈົ້າຕ້ອງກຳນົດຄວາມຍາວຄວາມສະເພາະຂອງພື້ນຖານ. ຕົວຢ່າງ: varchar(15).
ວັດຖຸຂອງ MySQL
ວັດຖຸທີ່ສາມາດມີການໃຊ້ຂອງ MySQL.
ວັດຖຸຈຳນວນ | 描述 |
---|---|
|
ສະໜັບສະໜູນຈຳນວນທີ່ມີສະເພາະ. ຕາມການກຳນົດຈຳນວນຂອງຈຳນວນທີ່ສູງສຸດໃນ size. |
|
ສະໜັບສະໜູນຈຳນວນທີ່ມີສາມາດທີ່ມີສະເພາະ. ຕາມການກຳນົດຄວາມສູງສຸດຂອງຈຳນວນຂອງຕາມ size. ໃນ d ກຳນົດຈຳນວນຂອງຈຳນວນທີ່ຢູ່ຂ້າງທາງຂວາງຂອງພາສາຂາ. |
ວັດຖຸຂອງຄຳເວົ້າ | 描述 |
---|---|
char(size) |
ສະໜັບສະໜູນຄຳເວົ້າທີ່ມີຄວາມຍາວຄວາມສະເພາະ.(ສາມາດມີອັກສະນະພາສາ ຈຳນວນ ແລະ ສິ່ງສະເພາະ). ຕາມການກຳນົດຄວາມຍາວຄວາມສະເພາະຢ່າງສະນັບສະນຸດຂອງ size. |
varchar(size) |
ສະໜັບສະໜູນຄຳເວົ້າທີ່ມີຄວາມຍາວທີ່ສາມາດປ່ຽນແປງ.(ສາມາດມີອັກສະນະພາສາ ຈຳນວນ ແລະ ສິ່ງສະເພາະ). ຕາມການກຳນົດໃນປະເພດ size. |
tinytext | ສະໜັບສະໜູນຄຳເວົ້າທີ່ມີຄວາມຍາວທີ່ສາມາດປ່ຽນແປງ ສູງສຸດ 255 ຄວາມສະເພາະ. |
|
ສະໜັບສະໜູນຄຳເວົ້າທີ່ມີຄວາມຍາວທີ່ສາມາດປ່ຽນແປງ ສູງສຸດ 65535 ຄວາມສະເພາະ. |
|
ສະໜັບສະໜູນຄຳເວົ້າທີ່ມີຄວາມຍາວທີ່ສາມາດປ່ຽນແປງ ສູງສຸດ 16777215 ຄວາມສະເພາະ. |
|
ສະໜັບສະໜູນຄຳເວົ້າທີ່ມີຄວາມຍາວທີ່ສາມາດປ່ຽນແປງ ສູງສຸດ 4294967295 ຄວາມສະເພາະ. |
ວັດຖຸຂອງວັນ | 描述 |
---|---|
|
支持日期或时间 |
杂项数据类型 | 描述 |
---|---|
enum(value1,value2,ect) | ENUM 是 ENUMERATED 列表的缩写。可以在括号中存放最多 65535 个值。 |
set | SET 与 ENUM 相似。但是,SET 可拥有最多 64 个列表项目,并可存放不止一个 choice |
主键和自动递增字段
每个表都应有一个主键字段。
ລະຫັດສະໜອງຕ້ອງຖືກນໍາໃຊ້ເພື່ອບັນທຶກບັນດາການບັນທຶກໃນບັນດາບັນດາ. ແລະວ່າແຕ່ລະລະຫັດສະໜອງຕ້ອງມີຄວາມອັນສະນະພຽງພຽງໃນບັນດາ. ລະຫັດສະໜອງບໍ່ອາດຫາຍຫຍັງ ເພື່ອວ່າບັນດາບັນດາການບັນທຶກຈະມີຄວາມອັນສະນະພຽງພຽງ.
ບັນດາລະຫັດສະໜອງຕ້ອງຖືກກໍາກັບໃນບັນດາບັນທຶກ. ກົດລະບຽບນີ້ບໍ່ມີອັນດັບລົງ. ທ່ານຕ້ອງກໍາກັບບັນດາລະຫັດສະໜອງເພື່ອອຸປະກອນດິນບັນດາບັນດາການບັນທຶກທີ່ຈະຕິດຕາມບັນດາລະຫັດດັ່ງກ່າວຄືກັບລະຫັດທີ່ຈະຄົ້ນຫາບັນດາການບັນທຶກທີ່ມີລະຫັດດັ່ງກ່າວ.
ຕົວຢ່າງດັ່ງກ່າວລົງມາຕັ້ງຂອງບັນດາລະຫັດ personID ຄືກັບລະຫັດ. ລະຫັດສະໜອງບໍ່ອາດຫາຍຫຍັງ ແລະຈະມີການຕັ້ງ AUTO_INCREMENT. AUTO_INCREMENT ຈະຂັດຂຶ້ນຄັດຄ້ານຄືກັບບັນດາລະຫັດໃໝ່ທີ່ຖືກເພີ່ມເຂົ້າມາ. ເພື່ອຮັບປະກັນວ່າບັນດາລະຫັດສະໜອງບໍ່ຫາຍຫຍັງ ພວກເຮົາຕ້ອງເພີ່ມການຕັ້ງ NOT NULL ໃຫ້ບັນດາລະຫັດດັ່ງກ່າວ.
ຕົວຢ່າງ
$sql = "CREATE TABLE Persons ( personID int NOT NULL AUTO_INCREMENT, PRIMARY KEY(personID), ຊື່ຜູ້ບັນຊາ varchar(15), ຊື່ສະມາຊິກ varchar(15), ອາຍຸ int )"; mysql_query($sql,$con);
- ບ່ອນໜ້າຫນ້າກ່ອນ MySQL Connect
- ບ່ອນໜ້າຫນ້າທ້າຍ MySQL Insert