MySQL

Home

MySQL Tutorial
Knowledge Developer Database Internet Resource
การสร้างฐานข้อมูลเว็บ
1.สร้างฐานข้อมูล
2.แนะนำระบบสิทธิของ MySQL
3.การกำหนดผู้ใช้สำหรับเว็บ
4.การใช้ฐานข้อมูลที่ถูกต้อง
5. Identifiers และประเภทข้อมูล
 
MySQL
1. การออกแบบฐานข้อมูลเว็บ
2. การสร้างฐานข้อมูลเว็บ
 

การใช้ฐานข้อมูลที่ถูกต้อง

มื่อมาถึงขั้นตอนนี้ ให้เข้าสู่ระบบในระดับผู้ใช้ MySQL เพื่อเตรียมทดสอบคำสั่งตัวอย่าง ทั้งจากการตั้งค่าเอง หรือผู้บริหารระบบตั้งค่าให้

สิ่งแรกที่ต้องทำ เมื่อเข้าสู่ระบบ คือ การระบุฐานข้อมูลที่ต้องการให้

mysql > use dbname;

dbname คือ ชื่อฐานข้อมูล

อีกวิธีหนึ่ง คือ ระบุฐานข้อมูลเมื่อเข้าสู่ระบบ

mysql dbname -h hostname –u username -p

ตามตัวอย่างนี้ ใช้ฐานข้อมูล widebook

mysql > use widebook;

เมื่อพิมพ์คำสั่งนี้แล้ว MySQL ควรตอบสนองดังนี้

Database changed

ถ้าไม่มีการเลือกฐานข้อมูลก่อน เริ่มต้นทำงาน MySQL จะให้ข่าวสารความผิดพลาด เช่น

ERROR 1046: NO Database Selected

การสร้างตารางข้อมูลของฐานข้อมูล

ขั้นตอนต่อไปหลังจากกำหนดฐานข้อมูล คือ การสร้างตารางข้อมูล ด้วยคำสั่ง CREATE TABLE

รูปแบบทั่วไปของประโยคคำสั่ง CREATE TABLE คือ

CREATE TABLE tablename (columns)

Tablename คือ ชื่อของตารางข้อมูลที่ต้องการสร้าง และ columns คือ ชื่อคอลัมน์ที่แบ่งรายการด้วยเครื่องหมายจุลภาค (,) ในตารางข้อมูล แต่ละคอลัมน์ จะมีชื่อคอลัมน์ตามด้วยประเภทข้อมูล

นี่ คือ schema ของ widebook

Customers ( CustomerID , Name, Address, City)
Orders ( OrderID , CustomerID, Amount, Date)
Books ( ISBN , Author, Title, Price)
Order-Items (OrderID, ISBM, Quantity)
Book-Reviews (ISBN, Review)

รายการคำสั่ง 8.1 แสดงประโยคคำสั่ง SQL สร้างตารางข้อมูลเหล่านี้ ซึ่งสามารถเขียนคำสั่งในไฟล์ SQL และประมวลผลด้วยการเรียกไฟล์ SQL ด้วยการพิมพ์

> mysql -h host -u wideuser widebook -p < widebook.sql

รายการคำสั่ง 8.1 widebook.sql – SQL สำหรับการสร้างตารางของ widebook

CREATE TABLE customers (
customerid int(3) unsigned NOT NULL auto_increment,
name char(30) NOT NULL default '',
address char(40) NOT NULL default '',
city char(20) NOT NULL default '',
PRIMARY KEY (customerid)
);

CREATE TABLE orders (
orderid int( 3) unsigned NOT NULL auto_increment,
customerid int( 3) unsigned NOT NULL default ' 0 ',
amount float( 6 , 2) default ' 0.00 ',
date date NOT NULL default ' 0000-00-00 ',
PRIMARY KEY (orderid)
) ;

CREATE TABLE books (
isbn char( 13) NOT NULL default '',
authors char( 30) default NULL,
title char( 60) default NULL,
price float( 4 , 2) default NULL,
PRIMARY KEY (isbn)
) ;

CREATE TABLE order_items (
orderid int( 3) unsigned NOT NULL default ' 0 ',
isbn char( 13) NOT NULL default '',
quantity tinyint( 3) unsigned default NULL,
PRIMARY KEY (orderid,isbn)
) ;

CREATE TABLE book_reviews (
isbn varchar( 13) NOT NULL default '',
review text,
PRIMARY KEY (isbn)
) ;

แต่ละตารางข้อมูล ได้รับการสร้างโดยประโยคคำสั่ง CREATE TABLE ของตัวเลข

ความหมายคีย์เวิร์ดอื่น

NOT NULL หมายความว่า แถวทั้งหมดในตารางข้อมูลต้องมีค่าในคอลัมน์นี้ ถ้าไม่มีการระบุฟิลด์สามารถเป็นค่าว่าง (null)

AUT0_INCREMENT คือ ส่วนการทำงานพิเศษ ที่สามารถใช้กับคอลัมน์จำนวนเต็ม ถ้าปล่อยให้ฟิลด์นี้ว่าง เมื่อมีการเพิ่มแถวเข้าไปยังตารางข้อมูลนั้น MySQL จะสร้างค่าเฉพาะอย่างอัตโนมัติ ค่านี้จะมากกว่าค่ามากที่สุดของคอลัมน์อยู่หนึ่ง โดยมีได้ 1 คอลัมน์ ในแต่ละตารางข้อมูล คอลัมน์ที่ระบุด้วย AUT0_INCREMENT ต้องเป็นดัชนี

PRIMARY KEY ระบุ หลังชื่อคอลัมน์ คอลัมน์นี้ คือ primary สำหรับตารางข้อมูล ข้อมูลในคอลัมน์นี้ต้องเป็นค่าเอกลักษณ์ MySQL จะทำให้คอลัมน์นี้เป็นดัชนีอย่างอัตโนมัติ สังเกตว่า ระบุ customerid ในตาราง customers เป็น primary และใช้เป็น AUT0_INCREMENT ดัชนีอัตโนมัติบน primary key ดูแลดัชนีที่ต้องการโดย AUT0_INCREMENT

การระบุ PRIMARY KEY หลังจากชื่อคอลัมน์ สามารถใช้สำหรับ primany key คอลัมน์เดียว คำสั่ง PRIMARY KEY อยู่ที่ท้ายของประโยคคำสั่ง order_items เป็นอีกรูปแบบ เนื่องจาก primary key สำหรับตารางข้อมูลนี้ ประกอบด้วย 2 คอลัมน์

UNSIGNED หลังประเภทข้อมูล Integer หมายความว่า ค่านี้สามารถเป็นศูนย์หรือค่าบวกเท่านั้น

การดูฐานข้อมูลด้วย SHOW และ DESCRIBE

เข้าสู่ระบบจัดการ MySQL และเรียกฐานข้อมูล Books ด้วยคำสั่ง use การดูตารางข้อมูลในฐานข้อมูลด้วยการพิมพ์

mysql > show tables;

MySQL จะแสดงรายการของตารางข้อมูลในฐานข้อมูล

Tables in widebook

Book_reviews
Books
Customers
Order_items
Orders

5 rows in set (0.06 sec)

การแสดงรายการฐานข้อมูลให้พิมพ์

mysql > show database;

การดูสารสนเทศของตารางข้อมูลเฉพาะ ตัวอย่างเช่น widebook ให้ใช้ DESCRIBE

mysql > describe books;

MySQL จะแสดงสารสนเทศตารางข้อมูลที่สร้างขึ้น

Field

Type

Null

Key

Default

Extra

isbn

char(13)

 

PR1

 

 

author

char(30)

yes

 

NULL

 

title

char(60)

yes

 

NULL

 

price

float(4,2)

yes

 

NULL

 

4 rows in set (0.05 sec)

คำสั่งเหล่านี้เป็นประโยชน์ ในการให้สารสนเทศของประเภทข้อมูล หรือ แจ้งดึงข้อมูลที่ยังไม่ได้สร้าง

 

  

สงวนลิขสิทธิ (C) widebase