SQL CREATE TABLE
จากที่เราได้ทำการออกแบบตารางไปแล้วทีนี้เราจะมาสร้างตารางด้วยคำสั่ง SQL กันซึ่งคำสั่งในการสร้างตารางของ SQL จะมีหลักของคำสั่งดังนี้
CREATE TABLE tablename (field1 type (size) (index1), field2 type (size) (index2), ...) |
|
โดยที่
- tablename หมายถึงชื่อของตารางที่จะทำการสร้าง
- field หมายถึงชื่อของฟิลด์ที่ต้องการสร้างในตาราง อย่างน้อยต้องมี 1 ฟิลด์ขึ้นไป
- type หมายถึงชนิดของข้อมูลที่ทำการกำหนดให้
- size หมายถึงขนาดของข้อมูลหรือขอบเขต
- index เป็นการกำหนดค่าของฟิลด์ที่ใช้เป็น index
โดยที่เราสามารถที่จะกำหนด type ของฟิลด์ต่างๆได้ดังตารางนี้
ชนิดข้อมูล
( Data Type ) |
คำอธิบาย
( Description ) |
การกำหนดขนาด
( Define Length ) |
|
INT (M) [UNSIGNED] |
เก็บตัวเลขจำนวนเต็มในช่วง -2147483648 ถึง 2147483648 แต่ถ้ากำหนด UNSIGNED จะเก็บค่าในช่วง 0 ถึง 4294967295 |
สามารถกำหนดขนาดได้แต่ถ้าไม่กำหนด ขนาดปกติจะเป็น 4 |
FLOAT (M[.D]) |
เก็บค่าตัวเลขทศนิยมที่เป็นได้ทั้งค่าบวก และค่าลบ |
สามารถกำหนดขนาดได้แต่ถ้าไม่กำหนด ขนาดปกติจะเป็น 10.2
โดยที่ 2 คือจำนวนของตำแหน่งทศนิยมที่เราต้องการซึ่งกำหนดได้ถึง 24 |
CHAR (M) |
เก็บตัวอักษร ระหว่าง 1 ถึง 255 ตัวอักษร |
สามารถกำหนดขนาดได้แต่ถ้าไม่กำหนด ขนาดปกติจะเป็น 1 |
VARCHAR (M) |
เก็บตัวอักษร ระหว่าง 1 ถึง 255 ตัวอักษร |
จำเป็นต้องกำหนดขนาด |
TEXT |
เก็บข้อความ ขนาดสูงสุด 65535 ตัวอักษร |
กำหนดหรือไม่กำหนดก็ได้ |
LONGTEXT |
เก็บข้อความ ขนาดสูงสุด 4294967295 ตัวอักษร |
กำหนดหรือไม่กำหนดก็ได้ |
DATE |
เก็บวันที่ รูปแบบ YYYY - MM - DD
ระหว่าง 1000 - 01 - 01 ถึง 9999 -12 - 31 |
ไม่มี |
TIME |
เก็บเวลา รูปแบบ HH : MM : SS |
ไม่มี |
DATETIME |
เก็บวันที่และเวลา รูปแบบ YYYY - MM - DD HH : MM : SS
ระหว่าง 1000 - 01 - 01 00:00:00 ถึง 9999 -12 - 31 23:59:59 |
ไม่มี |
|
|
สำหรับคุณสมบัติอื่นๆในการสร้างตารางผมไม่ขอเอ่ยถึงนะครับ ถ้าอยากทราบคุณต้องไปศึกษาในส่วนของ Access เอาเองว่าคุณสมบัติของตารางมีอะไรบ้าง การสร้างความสัมพันธ์เป็นยังไง ในที่นี้ผมจะยกตัวอย่างง่ายๆ ที่ใช้งานได้จริงเท่านั้น
หลังจากรู้วิธีการสร้างตารางแล้ว ทีนี้เรามาเริ่มสร้างของจริงกันเลยดีกว่า จากเดิมที่เรามีฐานข้อมูลแล้วชื่อ aspSQL.mdb และออกแบบตารางไว้ 2 ตารางคือ Author และ Profile และเขียนไฟล์ Object ติดต่อฐานข้อมูลแล้ว เราก็มาเริ่มกันเลย
เริ่มจากสร้างตาราง Author และ Profile ผมให้ไฟล์นี้ชื่อ create_table.asp ซึ่งมีรายละเอียดดังนี้
<!--#include file="aspsql_connect.asp" -->
<%
strSQL = "CREATE TABLE Author ( "
strSQL = strSQL & "Author_ID Integer NOT NULL CONSTRAINT MyFieldConstraint PRIMARY KEY,"
strSQL = strSQL & "Author_UserName Text (15) NOT NULL ,"
strSQL = strSQL & "Author_PassWord Text (20) NOT NULL ,"
strSQL = strSQL & "Author_Email Text (35) NOT NULL,"
strSQL = strSQL & "Author_JoinDate DateTime NOT NULL ,"
strSQL = strSQL & "Author_LastVisit DateTime NOT NULL ,"
strSQL = strSQL & "Author_Login Integer "
strSQL = strSQL & " );"
adoCon.Execute(strSQL)
If Err.Number <> 0 Then
Response.Write("<br />คำสั่งในการสร้างตารางของคุณผิดพลาด หรือมีตารางที่คุณสร้างอยู่ในฐานข้อมูลแล้ว<br />")
Else
Response.Write("<br />การสร้างตาราง Author เสร็จสมบูรณ์ <br />")
End If
strSQL = "CREATE TABLE Profile ( "
strSQL = strSQL & "Profile_ID Integer NOT NULL CONSTRAINT MyFieldConstraint PRIMARY KEY,"
strSQL = strSQL & "Author_ID Integer, "
strSQL = strSQL & "Profile_Name Text (15) NOT NULL ,"
strSQL = strSQL & "Profile_LastName Text (20) NOT NULL ,"
strSQL = strSQL & "Profile_Age Integer NULL,"
strSQL = strSQL & "Profile_Birth Date NULL ,"
strSQL = strSQL & "Profile_Location Text (40) NOT NULL"
strSQL = strSQL & " );"
adoCon.Execute(strSQL)
If Err.Number <> 0 Then
Response.Write("<br />คำสั่งในการสร้างตารางของคุณผิดพลาด หรือมีตารางที่คุณสร้างอยู่ในฐานข้อมูลแล้ว<br />")
Else
Response.Write("<br />การสร้างตาราง Profile เสร็จสมบูรณ์ <br />")
End If
%>
สำหรับ NULL และ NOT NULL นั้นจะเป็นการกำหนดความจำเป็นของฟิลด์นั้นๆ ถ้าฟิลด์ไหนกำหนดเป็น NOT NULL หมายความว่าในฟิลด์นั้นๆ ห้ามเป็นค่าว่าง แต่ถ้าเป็น NULL ก็เป็นได้ทั้งค่าว่าง และไม่ว่าง แต่ถ้าไม่กำหนด ค่าปกติจะเป็น NULL
|
ช่วยกันสนับสนุนรักษาเว็บไซต์ความรู้แห่งนี้ไว้ด้วยการสนับสนุน Source Code 2.0 ของทีมงานไทยครีเอท
|
|
|
By : |
ThaiCreate.Com Team (บทความเป็นลิขสิทธิ์ของเว็บไทยครีเอทห้ามนำเผยแพร่ ณ เว็บไซต์อื่น ๆ) |
|
Score Rating : |
|
|
|
Create/Update Date : |
2008-08-10 15:57:31 /
2012-05-30 21:06:05 |
|
Download : |
No files |
|
Sponsored Links / Related |
|
|
|
|
|
|
|