SlideShare a Scribd company logo
1 of 39
Download to read offline
Mr. Phonepaseuth PHONHDALA 1
SQL Server 2000
ພາກທີ 2
ການສາງຕາຕະລາງ້
• ຮູບທີ 2.1
• ການປຽບທຽບຕາຕະລາງ ກບຖານຂມູນັ ໍ້ ໃນທາງ
Physical
Mr. Phonepaseuth PHONHDALA 2
2.1. ສວນປະກອບຂອງຕາຕະລາງ່
2.1.1. ຖນັ ( Column )
2.1.2. ແຖວ( Row )
ຮູບທີ 2.2
ສວນປະກອບຂອງຕາຕະລາງ່
A B C D E F G HColumn Name
1
2
3
4
5
Row Number
1 2 3 4 5 6 7 8
Column Number
Mr. Phonepaseuth PHONHDALA 3
ຄວາມສາມາດຂອງ SQL Server 2000
ພາຍໃນ 1 ຖານຂມູນສາມາດບນຈຸຕາຕະລາງໄວໄດຫາຍເຖງໍ ັ ິ້ ້ ້ ຼ 2 ພນລານຕັ ້ າ
ຕະລາງ
ພາຍໃນ 1 ຕາຕະລາງສາມາດມຈານວນຖນໄດຫາຍສຸດີ ໍ ັ ້ ຼ 1,024 ຖນັ
ຂມູນທສາມາດຈດເກບໄດໃນແຕລະຖນມຂະໜາດສູງສຸດໍ ີ ັ ັ ັ ີ້ ່ ້ ່ 8,000 byte ເຊງບິ ໍ່ ່
ໄດນບຂມູນປະເພດ້ ັ ໍ້ Text ແລະ Binary ເຊງເກບໄດເຖງິ ັ ິ່ ້ 2 GB
ແຕຂມູນບໄດເກບໄວໃນຕາຕະລາງຈງ່ ້ ້ໍ ໍ ັ ິ້ ່ ມພຽງພອຍເຕີ ີ(pointer) ເຊງສາມາດິ່
ລງິ (link) ໄປຍງຖານຂມູນທເກບໄວເທານນັ ໍ ີ ັ ົ ັ້ ່ ່ ້້ .
Mr. Phonepaseuth PHONHDALA 4
2.1.3. ຄຫກີ ັຼ ( Primary Key )
ຖນທຈະເລອກມາເປນຄຫກັ ີ ື ັ ີ ັ່ ຼ ( Primary Key ) ຕອງບນຈຸຂມູນທບສາມາດຊາກນ້ ັ ໍ ີ ໍ ໍ ັ້ ່ ່ ້
CustomerID CustomerName CustomerAddress
1234 ສສຸກອນີ ໜວຍ 10 ບານພະບາດ, ເມອງຫວງພະບາງື ຼ
1235 ລາເງນໍ ິ ໜວຍ 5 ບານຊຽງແມນ, ເມອງຈອມເພດື ັ
1236 ແສງຄາໍ ໜວຍ 1 ບານແອນ, ເມອງຊຽງເງນື ິ
OrderID ProductID Quantity
1000
1000
1002 WAM105 3
1003 TVC108 20
TVC100 10
RFG100 5
Customer Table – Primary Key( CustomerID )
ຮູບທີ 2.3 ຄຫກຂອງຕາຕະລາງີ ັຼ Customer
OrderDetail Table – Primary Key( OrderID, ProductID )
ຮູບທີ 2.4 ຄຫກທປະກອບກນລະຫວາງີ ັ ີ ັຼ ່ ່ 2 ຖນັ
Mr. Phonepaseuth PHONHDALA 5
2.1.4. ຄນອກີ ( Foreign Key )
CustomerID CustomerName CustomerAddress
1234 ສສຸກອນີ ໜວຍ 10 ບານພະບາດ, ເມອງຫວງພະບາງື ຼ
1235 ລາເງນໍ ິ ໜວຍ 5 ບານຊຽງແມນ, ເມອງຈອມເພດື ັ
1236 ແສງຄາໍ ໜວຍ 1 ບານແອນ, ເມອງຊຽງເງນື ິ
ເປນຖນທບແມນຄຫກຂອງຕາຕະລາງັ ັ ີ ໍ ີ ັ່ ່ ່ ຼ , ແຕກາຍເປນຄຫກໃຫກບຕາຕ່ ້ັ ີ ັ ັຼ ະ
ລາງອນໄດື່ ້
OrderID OrderDate CustomerID
102 10/9/2006 1236
100 5/1/2006 1234
101 10/9/2006 1235
103 15/7/2006 1236
Order Table – Primary Key( OrderID ), Foreign( CustomerID )
Customer Table – Primary Key( CustomerID )
ຮູບທີ 2.5
ຄວາມສາພນລະຫວາງຄນອກໍ ັ ີ່
ແລະຄຫກີ ັຼ
Mr. Phonepaseuth PHONHDALA 6
2.2. ການເຮດັ Normalization
ເປນວທການອອກແບບຕາຕະລາງຕາມກດເກນມາດຕະຖານັ ິ ີ ົ
ເພອລຸດຄວາມຊາຊອນຂອງຂມູນໃນຕາຕະລາງດຽວກນື ໍ ໍ ັ່ ້ ້້
ເພອຄວາມສະດວກໃນການປຽນແປງຂມູນື ໍ່ ້່ ( Udate )
ເພອຄວາມສະດວກໃນການເພມຂມູນື ີ ໍ່ ່ ້ ( insert )
ເພອຄວາມສະດວກໃນການລບຂມູນື ຶ ໍ່ ້ ( Delete )
OrderID OrderDate CustID CustName CustAddrees ProductID ProName ProColor
5555 TVC100
RFG100
WAM105
IRN110
RFG100
TVC108
1003 15/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ WAM104 ຈກຊກເຄອງັ ັ ື່ ເຫອງຼື 15
? ? ? ? ? POT107 ໝຫຸງເຂໍ ົ້ ້າ ຂາວ ?
5555
ບວົທລະທດສໍ ັ ີ
ຕູເຢນ້ ັ
ຈກຊກເຄອງັ ັ ື່
ເຕາລດົ ີ
5555
ຕູເຢນ້ ັ
ແດງ
ຂຽວ
ຟາ້
ແດງ
5666
5666
1002 12/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ ດາໍ 7ທລະທດສໍ ັ ີ
Quaritity
1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 10
1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 5
1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 3
1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ 20
1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ 8
Update Many Place Unknown Value
Lost Information
ຮູບທີ 2.6 ບນຫາເນອງຈາກການອອກແບບຕາຕະລາງບດັ ື ໍ ີ່ ່
Mr. Phonepaseuth PHONHDALA 7
2.2.1. First Normal Form ( 1NF )
ມກດເກນດງນີ ົ ັ ີ່ ້:
ຕາຕະລາງຄວາມສາພນໃດໍ ັຕາຕະລາງຄວາມສາພນໃດໍ ັ ໆໆ ຈະເປນັຈະເປນັ 1NF1NF ກຕເມອບມກຸມຂມູນຊາໍ ໍ ື ໍ ີ ໍ ໍ່ ່ ່ ່ ້ ້່ກຕເມອບມກຸມຂມູນຊາໍ ໍ ື ໍ ີ ໍ ໍ່ ່ ່ ່ ້ ້່ ( Repeating( Repeating
Group)Group) ແແລະແບງຍອຍອກບໄດແລວ່ ່ ້ ້ີ ໍ່ລະແບງຍອຍອກບໄດແລວ່ ່ ້ ້ີ ໍ່ ( Atomicity )( Atomicity )
OrderID OrderDate CustomerID CustomerName CustomerAddrees ItemDetails
TVC100, ທລະທດສໍ ັ ີ, ບວົ , 10
RFG100, ຕູເຢນ້ ັ , ແດງ, 5
WAM105, ຈກຊກເຄອງັ ັ ື່ , ຂຽວ, 3
IRN110, ເຕາລດົ ີ , ຟາ້ , 20
RFG100, ຕູເຢນ້ ັ , ແດງ, 8
TVC108, ທລະທດສໍ ັ ີ, ດາໍ , 7
1003 15/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ WAM104, ຈກຊກເຄອງັ ັ ື່ , ເຫອງຼື , 15
5555
5666
1002 12/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ
1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ
1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ
Original Data
ຕາຕະລາງຕໄປນເປນຂມູນດບທໄດຈາກການສງຊສນຄໍ ີ ັ ໍ ິ ີ ັ ື ິ່ ້ ້ ່ ່ ້້ ້າ
ເຫນວາຂມູນໃນຖນັ ່ ໍ ັ້ ItemDetails ເຮດໃຫເກດກຸມຂມູນຊາັ ີ ໍ ໍ້ ່ ້ ້ ແລະຍງບເປນຕາຕະລາງຄວາມັ ໍ ັ່
ສາພນໍ ັ , ເພາະວາຂມູນໜງໆຈະຕອງມຖນຄບຖວນ່ ້ ້ໍ ຶ ີ ັ ົ້ ່ .
ຮູບທີ 2.7 ຕວຢາງຂມູນດບຂອງການສງຊສນຄົ ໍ ິ ັ ື ິ່ ້້ ່ ້ າ
Mr. Phonepaseuth PHONHDALA 8
OrderID OrderDate CustomerID CustomerName CustomerAddrees ItemDetails
5555 TVC100, ທລະທດສໍ ັ ີ, ບວົ , 10
RFG100, ຕູເຢນ້ ັ , ແດງ, 5
WAM105, ຈກຊກເຄອງັ ັ ື່ , ຂຽວ, 3
IRN110, ເຕາລດົ ີ , ຟາ້ , 20
RFG100, ຕູເຢນ້ ັ , ແດງ, 8
TVC108, ທລະທດສໍ ັ ີ, ດາໍ , 7
1003 15/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ WAM104, ຈກຊກເຄອງັ ັ ື່ , ເຫອງຼື , 15
5555
5555
5666
5666
1002 12/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ
1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ
1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ
1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ
1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ
1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ
ເຮາສາມາດແກໄຂໄດດງຕາຕະລາງຕໄປນົ ັ ໍ ີ້ ້ ່ ່ ້
ຮູບທີ 2.8 ຕາຕະລາງຄວາມສາພນຂອງການສງຊສນຄໍ ັ ັ ື ິ່ ້ ້າ( Order Table)
OrderID OrderDate CustID CustName CustAddrees ProductID ProName ProColor
5555 TVC100
RFG100
WAM105
IRN110
RFG100
TVC108
1003 15/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ WAM104 ຈກຊກເຄອງັ ັ ື່ ເຫອງຼື 15
5555
ບວົທລະທດສໍ ັ ີ
ຕູເຢນ້ ັ
ຈກຊກເຄອງັ ັ ື່
ເຕາລດົ ີ
5555
ຕູເຢນ້ ັ
ແດງ
ຂຽວ
ຟາ້
ແດງ
5666
5666
1002 12/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ ດາໍ 7ທລະທດສໍ ັ ີ
Quaritity
1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 10
1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 5
1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 3
1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ 20
1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ 8
ຮູບທີ 2.9 ຕາຕະລາງຄວາມສາພນຂອງການສງຊສນຄາທເປນໍ ັ ັ ື ິ ີ ັ່ ້ ່້ 1NF
Order Table – Primary Key( OrderID, ProdustID )
Mr. Phonepaseuth PHONHDALA 9
2.2.2. Second Normal Form ( 2NF )
ມກດເກນດງນີ ົ ັ ີ່ ້:
ຕາຕະລາງຄວາມສາພນໃດໍ ັຕາຕະລາງຄວາມສາພນໃດໍ ັ ໆໆ ຈະເປນັຈະເປນັ 2NF2NF ກຕເມອຕອງເປນໍ ໍ ື ັ່ ່ ່ ້ກຕເມອຕອງເປນໍ ໍ ື ັ່ ່ ່ ້ 1NF1NF ມາກອນ່ມາກອນ່ ແລະແລະ
ຖນທບແມນຄຂອງຕາຕະລາງຕອງຂນກບຄຫກທຸກຕວັ ີ ໍ ີ ື ັ ີ ັ ົ່ ່ ້່ ້ ຼຖນທບແມນຄຂອງຕາຕະລາງຕອງຂນກບຄຫກທຸກຕວັ ີ ໍ ີ ື ັ ີ ັ ົ່ ່ ້່ ້ ຼ
ກດເກນສາລບົ ໍ ັ 2NF ນໃຊກບຕາຕະລາງທມຄຫກຫາຍກວີ ັ ີ ີ ີ ັ້ ່້ ່ຼ ຼ າ 2 ຄຂນໄປີ ື້ . ດງນນເຮາຕອງພັ ັ ົ ິ່ ້ ້
ຈາລະນາວ່າ ມຖນໃດທບໄດເປນຄຫກີ ັ ີ ໍ ັ ີ ັ່ ່ ້ ຼ ແຕຂນຢູກບພຽງບາງຖນຂອງຄຮວມຫບເທານນ່ ່ ່ື ັ ັ ີ ື ໍ ົ ັ້ ່ ່ ້ຼ .
ຈາກຮູບທີ 2.9 ເຮາຈະເຫນວົ ັ ່າ:
ຖນັ OrderDate, CustomerID, CustomerName ແລະ CustomerAddress
ຕາງກຂນກບຖນ່ ໍ ື ັ ັ່ ້ OrderID
ຖນັ ProdustName ແລະ ProdustColor ຈະຂນກບຖນື ັ ັ້ ProdustID
ມພຽງຖນີ ັ Quantity ຈະຂນກບຄຮວມທງສອງຄື ັ ີ ັ ື້ ່ OrderID ແລະ ProdustID
ດງນນເຮາຈງສາມາດແຍກຕາຕະລາງຄວາມສາພນອອກມາເພອໃຫຢູໃນຮູບຮາັ ັ ົ ິ ໍ ັ ື່ ້ ່ ່ ້ ່ ່ ງ
2NF ດງນັ ີ່ ້:
Mr. Phonepaseuth PHONHDALA 10
OrderID OrderDate CustomerID CustomerName CustomerAddrees
1000 10/07/2005 5555
5666
1002 12/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ
1003 15/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ
ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ
1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ
OrderID ProductID Quaritity
1000 TVC100
RFG100
WAM105
IRN110
RFG100
TVC108
1003 WAM104 15
10
1000 5
1000 3
1001 20
1001 8
1002 7
Order Detail Table – Key( OrderID, ProductID )
ຮູບທີ 2.10 ຕາຕະລາງຄວາມສາພນຕາງໆທເປນໍ ັ ີ ັ່ ່ 2NF
ProductID ProductName ProductColor
TVC100
WAM105
IRN110
RFG100
TVC108
WAM104 ຈກຊກເຄອງັ ັ ື່ ເຫອງຼື
ບວົທລະທດສໍ ັ ີ
ຈກຊກເຄອງັ ັ ື່
ເຕາລດົ ີ
ຕູເຢນ້ ັ
ຂຽວ
ຟາ້
ແດງ
ດາໍທລະທດສໍ ັ ີ
Product Table – Key( ProductID )
Order Table – Key( OrderID )
Mr. Phonepaseuth PHONHDALA 11
2.2.3. Third Normal Form ( 3NF )
ມກດເກນດງນີ ົ ັ ີ່ ້:
ຕາຕະລາງຄວາມສາພນໃດໍ ັຕາຕະລາງຄວາມສາພນໃດໍ ັ ໆໆ ຈະເປນັຈະເປນັ 3NF3NF ກຕເມອຕອງເປນໍ ໍ ື ັ່ ່ ່ ້ກຕເມອຕອງເປນໍ ໍ ື ັ່ ່ ່ ້ 2NF2NF ມາກອນ່ມາກອນ່ ແລະແລະ
ບມຖນອນໃດໃນຕາຕະລາງໄປຂນກບຖນທບແມນຄຕວໃດໜງໃນຕາຕະລາໍ ີ ັ ື ື ັ ັ ີ ໍ ີ ົ ຶ່ ່ ້ ່ ່ ່່ບມຖນອນໃດໃນຕາຕະລາງໄປຂນກບຖນທບແມນຄຕວໃດໜງໃນຕາຕະລາໍ ີ ັ ື ື ັ ັ ີ ໍ ີ ົ ຶ່ ່ ້ ່ ່ ່່ ງງ ແແທນທີ່ທນທີ່
ຈະຂນຢູສະເພາະກບຄຫກເທານນື ັ ີ ັ ົ ັ້ ່ ້່ ຼຈະຂນຢູສະເພາະກບຄຫກເທານນື ັ ີ ັ ົ ັ້ ່ ້່ ຼ
ການພຈາລະນາຕາຕະລາງຄວາມສາພນທຢູໃນຮູບຂອງິ ໍ ັ ີ່ ່ 3NF ນນັ້ ໃຫເບງວາມຖນໃດ້ ່ິ ີ ັ່
ທບເປນຄຫກີ ໍ ັ ີ ັ່ ່ ຼ ແຕມຄວາມສາມາດໄປຂນຢູກບຖນ່ ່ີ ື ັ ັ້ ຫກຸມຂອງຖນທບແມນຄຫກໄດຼ ຼື ັ ີ ໍ ີ ັ່ ່ ້່ ່
ຫາກພຈະລະນາຕາຕະລາງຄວາມສາພນຈາກຮູບທິ ໍ ັ ີ 2.10 ຈະເຫນວາຕາຕະລາງັ ່ Order
ຈະມຖນີ ັ CustomerName ແລະ CustomerAddress ຕາງກສາມາດຂນກບຖນ່ ໍ ື ັ ັ່ ້
CustomerID ໄດ້ ດງນນເຮາຈງຕອງແຍກຕາຕະລາງຄວາມສາພນອອກມາຈາກຕາຕະລາງັ ັ ົ ິ ໍ ັ່ ້ ່ ້
ເກາົ່ ເຊງຈະໄດດງຮູບທິ ັ ີ່ ່້ 2.11
Mr. Phonepaseuth PHONHDALA 12
OrderID OrderDate CustomerID
1000 10/07/2005 5555
5666
1002 12/07/2005 5999
1003 15/07/2005 5999
1001 12/07/2005
CustomerID CustomerName CustomerAddrees
5555
5666
5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ
ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ
ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ
Order Table – Key( OrderID )
Customer Table – Key( CustomerID )
ຮູບທີ 2.11 ຜນການແຍກຕາຕະລາງຄວາມສາພນໃຫເປນົ ໍ ັ ັ້ 3NF
ຈາກຮູບທີ 2.11 ຈະພບວາຫງຈາກການແຍກອອກເປນຕາຕະລາງຍອຍແລວົ ັ ັ່ ່ ້ຼ ຄວາມ
ຊາຊອນຂອງຂມູນໄດລຸດລງໄປອກໍ ໍ ົ ີ້ ້້ ້ ເຊນັ່ : ໃນຕາຕະລາງ Customer ແຕກອນເຄຍເກບ່ ່ ີ ັ
ຂມູນລູກຄາຊໍ ື້ ່້ ມະນລດີ ັ ເຖງິ 2 ລາຍການ, ໃນຕອນນຈະເຫອພຽງລາຍການດຽວເທານນີ ື ົ ັ້ ່ ້ຼ
ເພາະລາຍການສງຊຂອງລູກຄາຄນນໄດຖກກາໜດໄວໃນຕາຕະລາງັ ື ົ ີ ື ໍ ົ່ ້ ້້ ້ ້ Order ແລວນນ້ ັ້
ເອງ.
Mr. Phonepaseuth PHONHDALA 13
2.3.1. ບຮູຄໍ່ ້ ່າ ( Null )
2.3. ປະເພດຂອງຂມູນໍ້ ( Data Type)
2.3.2. String
ປກກະຕແລວຄາຂມູນຂອງເຣຄອດໃນແຕລະຖນຈະຖກເກບຄາຕາມປະເພດຂມູນົ ິ ໍ ັ ື ັ ໍ້ ່ ່ ່້ ້
ທກາໜດໄວີ ໍ ົ່ ້ ແຕກມບາງກລະນທບສາມາດກາໜດຄາໃຫກບຂມູນໃນຕາແໜງດງ່ ່ ້ ່ໍ ີ ໍ ີ ີ ໍ ໍ ົ ັ ໍ ໍ ັ່ ່ ່ ້ ່
ກາວໄດດວຍເຫດນຈງມຄາຂມູນປະເພດໜງເອນວ່ ້ ້ ່ ່ີ ິ ີ ໍ ຶ ີ້ ່ ້ ່ ້ າ: ບຮູຄໍ່ ້ ່າ( Null )
ເປນປະເພດຂມູນທສາມາດໃຊເກບອກຂະຣະຕາງັ ໍ ີ ັ ັ້ ່ ້ ່ ໆ ລວມທງຕວອກສອນັ ົ ັ , ຕວົ
ເລກ ຫສນຍາລກຼື ັ ັ .
ສາມາດເກບຂມູນໃນແຕລະຖນໄດສຸງສຸດບເກນັ ໍ ັ ໍ ີ້ ່່ ້ 8,000 ອກຂະຣັ ະ
String ແບງອອກເປນ່ ັ 2 ປະເພດຄື: Char (n) ແລະ varchar (n)
ຂມູນທຕອງການເກບໍ ີ ັ້ ່ ້ ຂມູນທຖກຈດເກບຈງໍ ີ ື ັ ັ ິ້ ່ char(6) ຂມູນທຖກຈດເກບຈງໍ ີ ື ັ ັ ິ້ ່ varchar(6)
Microsoft Micros Micros
SQL SQL*** SQL
Server Server Server
ຕາຕະລາງທີ 2.1 ຕວຢາງການຈດເກບຂມູນປະເພດົ ັ ັ ໍ່ ້ String
Mr. Phonepaseuth PHONHDALA 14
2.3.3. Binary
ເປນປະເພດຂມູນທຈດເກບຄາແບບໄບນາຣຄັ ໍ ີ ັ ັ ີ ື້ ່ ່່ : ລຽງກນເປນຊຸດຕວເລກັ ັ ົ 0 ແລະ 1
ແຕໃນການນາຄາຂມູນເຂາແລະອອກຈາກລະບບຈະສະແດງໃຫເຫນເປນເປນຄາຂອ່ ່ ້ ່ໍ ໍ ົ ົ ັ ັ້ ້ ັ ງ
ເລກຖານ 16 (0-9 ແລະ A-F)
ຂມູນທຕອງການຈດເກບໍ ີ ັ ັ້ ່ ້ ຂມູນທຈະຖກຈດເກບຈງໍ ີ ື ັ ັ ິ້ ່ binary(2) ຂມູນທຈະຖກຈດເກບຈງໍ ີ ື ັ ັ ິ້ ່ varbinary(2)
0x0 0x0000 0x0
0x1 0x0100 0x1
0x11 0x1100 0x11
0x111 0x0111 0x111
ຕາຕະລາງທີ 2.2 ຕວຢາງການຈດເກບຂມູນປະເພດົ ັ ັ ໍ່ ້ Binary
ໄບນາຣີ່ (Binary) ແບງການເກບຂມູນອອກເນ່ ັ ໍ້ 2 ລກສະນະຄັ ື:
Binary (n) ມຄວາມໝາຍຄກນກບີ ື ັ ັ char (n)
Varbinary (n) ມຄວາມໝາຍຄກນກບີ ື ັ ັ varchar (n)
Mr. Phonepaseuth PHONHDALA 15
2.3.4. Integer
ເປນປະເພດຂອງຂມູນທໃຊເກບພຽງຄາຕວເລກັ ໍ ີ ັ ົ້ ່ ້ ່ , ໂດຍແບງອອກເປນ່ ັ 3 ປະເພດ
ຕາມຂະໜາດການເກບຂມູນັ ໍ້ ດງຕາຕະລາງທັ ີ່ 2.3
ປະເພດ ຂະໜາດຂມູນໍ້ ( byte) ຈານວນຄາທງໝດໍ ັ ົ່ ຄາທນາມາໃຊ່ ້ີ ໍ່
tinyint 1 28 = 256 0 ເຖງິ 255
Smallint 2 -215 ເຖງິ 215 -1 -32,768 ເຖງິ 32,767
Int 4 -231 ເຖງິ 231 -1 -2,147,483,648 ເຖງິ 2,147,483,648
bigint 8 -263 ເຖງິ 263 -1
-9223372036854775808 ເຖງິ
9223372036854775807
Smallint, int ແລະ bigint ໃຊ້ 1 ບດິ (bite) ສາລບເກບຄາເຄອງໝາຍໍ ັ ັ ື່ ່ ເຮດັ
ໃຫຕອງລຸດຈະນວນບດລງ້ ້ ິ ົ 1 ໃນການຄານວນຄາຄໍ ື່ : 215, 231 ແລະ 263 ຕາມລາໍ
ດບັ .
ຕາຕະລາງທີ 2.3 ຕວຢາງການຈດເກບຂມູນປະເພດົ ັ ັ ໍ່ ້ Integer
Mr. Phonepaseuth PHONHDALA 16
2.3.5. Approximate Numeric
2.3.6. Exact Numeric
ໃຊເກບຄາທເປນຕວເລກ້ ່ັ ີ ັ ົ່ ລວມເຖງທດນຍມິ ົ ິ ົ , ໂດຍມການກາໜດຈານວນຫກຂອງີ ໍ ົ ໍ ັຼ
ຕວເລກທງໝດໄວກອນົ ັ ົ ້ ່ . ເຊງແບງອອກເປນິ ັ່ ່ 2 ປະເພດຄື: real ແລະ float
real
ໃຊຂະໜາດຂມູນໃນການຈດກບ້ ໍ ັ ັ້ 4 byte
ສາລບຊວງຂອງຄາທຍອມຮບຄໍ ັ ີ ັ ື່ ່ ່ : -3.40E+308 ເຖງິ 3.40E+308
float
ໃຊຂະໜາດຂມູນໃນການຈດກບ້ ໍ ັ ັ້ 8 byte
ສາລບຊວງຂອງຄາທຍອມຮບຄໍ ັ ີ ັ ື່ ່ ່ : -1.79E+308 ເຖງິ 1.79E+308
ເປນປະເພດຂອງຂມູນທມການກາໜດຈານວນຫກຂອງຕວເລກພອມທງຕາແໜງັ ໍ ີ ີ ໍ ົ ໍ ັ ົ ັ ໍ້ ່ ຼ ້ ່
ຂອງທດນຍມໄວຢາວຊດເຈນົ ິ ົ ັ້ ່ . ໂດຍມການກາໜດຮູບແບບດງນີ ໍ ົ ັ ີ່ ້:
decimal[(p[, s])] ແລະ numeric[(p[, s])]
P ໝາຍເຖງຈານວນຫກຂອງຕວເລກທງໝດທຢູໃນຕາແໜງທາງດານຊາຍິ ໍ ັ ົ ັ ົ ີ ໍຼ ່ ່ ່ ້ ້
ຂອງຈຸດທດນຍມົ ິ ົ ແລະ 0< p <=38
Mr. Phonepaseuth PHONHDALA 17
ຫາກບໄດມການກາໜດຄໍ ີ ໍ ົ່ ້ ່າ:
p ( precision ) ຈະມຄາເປນີ ັ່ 18
s ( scale ) ຈະມຄາເປນີ ັ່ 0
s ໝາຍເຖງຈານວນຫກຂອງຕວເລກທງໝດທຢູໃນຕາແໜງທາງດານຂວິ ໍ ັ ົ ັ ົ ີ ໍຼ ່ ່ ່ ້ າ
ຂອງຈຸດທດນຍມົ ິ ົ ແລະ 0<= s <=p
ຕວຢາງົ ່ : ຖາກາໜດປະເພດຂອງຂມູນເປນ້ ໍ ົ ໍ ັ້ decimal(5,2)
ສາມາດເກບຄັ ່າ 12.34 ຫຼື 123.45
ຖາປອນຄ້ ້ ່າ 12.345 ຫຼື 123.456 ຈະເກບຄາເປນັ ັ່ 12.34 ຫຼື 123.45
ແຕບສາມາດເກບຄ່ ່ໍ ັ່ າ 1234 ຫຼື 1234.56
ທບສາມາດເກບຄີ ໍ ັ່ ່ ່າ 1234 ຫຼື 1234.56 ກເພາະວໍ່ ່າ p=5 , s=2 ແລະ
p-s=3 ນນໝາຍຄວາມວາຈານວນຖວນສາມາດເກບໄດັ ໍ ັ້ ່ ້ ້ 3 ຫກຼັ .
Mr. Phonepaseuth PHONHDALA 18
ເປນປະເພດຂອງຂມູນທເກບຄາຂອງວນທັ ໍ ີ ັ ັ ີ້ ່ ່່ (Date) ຫຼື ເວລາ(Time) ຫທງສອງຼື ັ
ຢາງລວມກນ່ ັ .
2.3.7. Date and Time
ຈານວນຫກໍ ັຼ ຂະໜາດຂມູນໍ້ ( byte )
1-9 5
10-19 9
20-28 13
29-38 17
ຕາຕະລາງທີ 2.4 ຄວາມສາພນລະຫວາງຈານວນຫກທໃຊໍ ັ ໍ ັ ີ່ ້ຼ ່ ແລະຂະໜາດຂອງຂມູນທຖກຈດເກບໍ ີ ື ັ ັ້ ່
ການໃສຄາຂມູນຂອງວນທສາມາດກາໜດໄດຫາຍລກສະນະດງຕວຢາງຕໄປ່ ່ ້ ່ໍ ັ ີ ໍ ົ ັ ັ ົ ໍ້ ່ ່ ່ຼ ນີ້:
“Jun 15 2006” “15 Jun 2006” “2006 15 Jun” “15 Jun, 2006”
“Jun 15 06” “15 Jun 06” “2006 June 15” “June 15, 2006”
Mr. Phonepaseuth PHONHDALA 19
ຫສາມາດໃຊເຄອງໝາຍຂນຊວຍເຊນຼື ື ັ ັ້ ່່ ້ ່ :
6/15/06 (m/d/y) 6-15-06 (m-d-y) 6.15.06 (m.d.y)
6/01/15 (m/y/d) 06-6-15 (y-m-d) 15.06.6 (d.y.m)
15/06/06 (dd/mm/yy) 06-15-2006 (mm-dd-yyyy)
ສວນລກສະນະຂອງເວລາກເຊນດຽວກນ່ ັ ໍ ັ ັ່ ່ ສາມາດກາໜດໄດດງນໍ ົ ັ ີ້ ່ ້:
8:30 8:30 PM 20:30
20:30:15:850 (20 ຊວໂມງົ່ 30 ນາທີ 15 ວນາທິ ີ 850 ມລລວນາທິ ິ ິ ີ)
20:30:15:8 (20 ຊວໂມງົ່ 30 ນາທີ 15 ວນາທິ ີ 8/10 ວນາທິ ີ)
Date and Time ໄດແບງຂມູນອອກເປນ້ ່ ໍ ັ້ 2 ລກສະນະຄັ ື: datetime ແລະ smalldatetime
ປະເພດ ຂະໜາດຂມູນໍ້ ( byte) ຈານວນຄາທງໝດໍ ັ ົ່
datetime 8 1/1/1753 – 12/31/9999
smalltime 4 1/1/1900 – 6/6/2079
ຕາຕະລາງທີ 2.5 ປະເພດຂອງຂມູນແບບໍ້ Date and Time
Mr. Phonepaseuth PHONHDALA 20
ໃຊສາລບເກບປະເພດຂອງຂມູນທເປນຄາຂອງເງນ້ ່ໍ ັ ັ ໍ ີ ັ ິ້ ່ ໂດຍໃຊລກສະນະຂອງຕວ້ ັ ົ
ເລກໃນການກາໜດຄໍ ົ ່າ ເຊງແບງອອກເປນິ ັ່ ່ 2 ລກສະນັ ະ ດງຕາຕະລາງທັ ີ່ 2.6
2.3.8. Money
ປະເພດ ຂະໜາດຂມູນໍ້ ( byte) ຈານວນຄາທງໝດໍ ັ ົ່ ຄາທນາມາໃຊ່ ້ີ ໍ່
smallmoney 4 - 231 ເຖງິ 231 -1
- 263 ເຖງິ 263 -1
- 214,748,3648 ເຖງິ
214,748,3647
money 8
- 922,337,203,685,477,5808
ເຖງິ 922,337,203,685,477,5808
ຕາຕະລາງທີ 2.6 ປະເພດຂອງຂມູນແບບໍ້ Money
2.3.9. Unicode
ໃຊຂະໜາດຂມູນເຖງ້ ໍ ິ້ 2 byte ຕການເກບອກຂະຣໍ ັ ັ່ ະ 1 ຕວົ ຈງເຮດໃຫມຈາິ ັ ີ ໍ່ ້
ນວນຂອງຕວອກຂະຣະທງໝດທ◌ສາມາດອາງອງໄດົ ັ ັ ົ ີ ີ່ ້ ້ ເຖງິ 216 = 65,536 ຄາ່ .
ເໝາະສາລບເກບຂມູນທ◌ຕອງໃຊຫາຍພາສາຣວມກນໍ ັ ັ ໍ ີ ັ້ ່ ້ ້ ່ຼ ໂດຍແບງອອກເປນ່ ັ 3
ລກສະນັ ະ ດງຕໄປນັ ໍ ີ່ ່ ້:
Mr. Phonepaseuth PHONHDALA 21
nchar(n) ມການເກບຂມູນຄາຍຄກນກບປະເພດຂມູນແບບີ ັ ໍ ື ັ ັ ໍ້ ້້ Char ໂດຍ
n ມຄາຕງແຕີ ັ່ ່້ 1 - 4,000. ສວນຂະໜາດຂອງຂມູນທ◌ຕອງການເກບຈະເປນ່ ່ ້ໍ ີ ັ ັ້ n x
2 ເນອງຈາກໃຊື່ ້ 2 byte ໃນການເກບຄັ ່າ 1 ຕວອກຂະຣົ ັ ະ.
Nvarchar(n) ຄກນກບື ັ ັ nchar ແຕມລກສະນະການເກບຂມູນຄາຍກນກບປ່ ້ີ ັ ັ ໍ ັ ັ້ ະ
ເພດຂອງຂມູນແບບໍ້ varchar ຄື: ຈະເກບຂມູນສະເພາະທຮບມາຈງເທານນັ ໍ ີ ັ ິ ົ ັ້ ່ ່ ້ , ບມໍ ີ່
ການເກບຊອງຫວາງໃຫຄບຕາມຈານວນອກຂະລະທ◌ເຫອັ ົ ໍ ັ ີ ື່ ່ ້ ່ ຼ .
ntext ເນອງຈາກື່ nchar ແລະ nvarchar ມຂຈາກດໃນການເກບຂີ ໍ ໍ ັ ັ ໍ້ ້
ມູນຢູພຽງ່ 4,000 ອກຂະລະເທານນັ ົ ັ່ ້ . ntext ຈງຖກນາມາໃຊວຽກໃນກລະນທ◌ຕອງິ ື ໍ ໍ ີ ີ່ ້ ່ ້
ການເກບຂມູນທມຂະໜາດໃຫຍັ ໍ ີ້ ່ ່.
ໂດຍມລກສະນະການເກບຂມູນຄາຍກນກບປະເພດຂອງຂມູນແບບີ ັ ັ ໍ ັ ັ ໍ້ ້້ text ເຊງິ່
ເກບຂມູນໄດສູງສຸດເຖງັ ໍ ິ້ ້ 230 – 1 = 1,073,741,823 ຕວອກຂະຣົ ັ ະ.
Mr. Phonepaseuth PHONHDALA 22
ມປະເພດຂມູນບາງສວນທ◌ບສາມາດຈດກຸມໄດີ ໍ ີ ໍ ັ້ ່່ ່ ່ ້ ຈງນາມາໄວລວມກນິ ໍ ັ່ ້
ດງມລາຍັ ີ່ ລະອຽດຕໄປນໍ ີ່ :
2.3.10. Special
text ສາມາດເກບຂມູນໄດສູງເຖງັ ໍ ິ້ ້ 231 – 1 (2,147,483,647) ຫປຼື ະ
ມານ 2 GB.
ຂມູນປະເພດນບໄດຖກຈດເກບລວມຢູໃນຕາຕະລາງຄປະເພດຂອງຂມູນຊະໍ ີ ໍ ື ັ ັ ື ໍ້ ້ ່ ້້ ່ ນດິ
ອນື່ ໆ ແຕຈະເກບເປນພອຍເຕ່ ັ ັ ີ( pointer ) ຂະໜາດ 16 byte ແທນ ໂດຍເຮດັ
ໜາທຊຕໄປຫາຂມູນເຊງໄດຖກແບງອອກເປນແຕລະດາຕາເພຈ້ ້ ່ ່ີ ີ ໍ ໍ ິ ື ັ່ ້ ່ ້ ່ ( Data page )
ຂະໜາດ 8 KB
bit ເປນການເກບຂມູນແບບບູລນັ ັ ໍ ີ້ ( Boolean ) ໂດຍຄາທເປນໄປໄດມ່ ້ີ ັ ີ່
ພຽງ 2 ຄາຄ່ ື: ຖກື ຫຼື ຜດິ . ເຊງອາດແທນຄາໄດເປນິ ັ່ ່ ້ True ຫື False, Yes ຫຼື
No, On ຫຼື Off ເປນຕນັ ົ້ .
ສາລບການເກບຂມູນຈງຂອງລະບບຈະເກບເປນຄາຕວເລກຄໍ ັ ັ ໍ ິ ົ ັ ັ ົ ື້ ່ : 0 ໝາຍເຖງຜດິ ິ
(False) ແລະ 1 ໝາຍເຖງຖກິ ື (True)
Mr. Phonepaseuth PHONHDALA 23
image ຄກນກບື ັ ັ text ແຕເປນການເກບຂມູນໄບນາຣ່ ັ ັ ໍ ີ້ ່ (Binary) ຂະໜາດ
ໃຫຍເຊນ່ ັ່ : ໄຟລຮູບພາຍ໌ , ສຽງ ເປນຕນັ ົ້ . ຈະບເກບຂມູນທເປນຕວອກຂະຣະເຊນໍ ັ ໍ ີ ັ ົ ັ ັ່ ້ ່ ່ : ຂໍ້
ຄວາມຍາວໆ
Mr. Phonepaseuth PHONHDALA 24
2.4. ການຕງຊອອບເຈກັ ື ັ້ ່ ( Object ) ໃນ SQL Server 2000
ກອນທຈະເຂາສູການນາປະເພດຂມູນໄປໃຊ່ ່ ້ີ ົ ໍ ໍ່ ້ ້ ເຮາຄວນເຂາໃຈເຖງການຕງຊຂອງົ ົ ິ ັ ື້ ້ ້
ຖນັ (Column), ຕາຕະລາງ ແລະອອບເຈກອນໆຂອງັ ື່ SQL Server ຕາມຂກາໍ ໍ້
ໜດດງຕໄປນົ ັ ໍ ີ່ ່ ້:
1. ຂະໜາດຂອງຄວາມຍາວສາມາດເປນໄປໄດຕງແຕັ ັ້ ່້ 1-128 Unicode
Characters ເຊງລວມທງຕວອກສອນິ ັ ົ ັ່ , ສນຍາລກັ ັ ແລະຕວເລກົ .
2. ອກຂະລະຕວທາອດຕອງເປນຕວອກສອນັ ົ ໍ ິ ັ ົ ັ້ ຫອກຂະຣຼື ັ ະ 3 ຕວົ ຄື: @, #, _
3. ສນຍາລກຕໄປນສາມາດໃຊຫງຈາກກາໜດອກຂະຣະຕວທາອດໄປແລວຄັ ັ ໍ ີ ັ ໍ ົ ັ ົ ໍ ິ ື່ ້ ້ ້ຼ : #,
$ ແລະ _
4. ສາລບສນຍາລກໍ ັ ັ ັ @ ຄວາມໝາຍໃນທາງລະບບຄົ ື: ໃຊເປນຕວປຽນຊະນດໂລ້ ່ັ ົ ິ
ຄອລ Local Variable ແລະຈະສາມາດໃຊພຽງນາໜາເປນອກຂະຣະຕວທາອດ້ ້ໍ ັ ັ ົ ໍ ິ
ເທານນົ ັ່ ້ .
Mr. Phonepaseuth PHONHDALA 25
6. ສາມາດໃຊຊອງຫວາງ້ ່ ່ ( Space bar ) ໃນການຕງຊໄດັ ື້ ່ ້, ແຕໃນການອາງອງຊ່ ້ ີ ື່
ເຫານຈາເປນຕອງໄດມການກາໜດເຄອງໝາຍຄາເວຼົ່ ີ ໍ ັ ີ ໍ ົ ື ໍ ົ້ ່ ້້ ້ າ( Double Question Mark:
“…” ) ຫວງຂຼື ົ ໍ( Square Bracket : […] ).
5. ສນຍາລກັ ັ # ໝາຍເຖງອອບເຈກທຖກສາງຂນມາເພອໃຊຊວຄາວິ ັ ີ ື ື ື ົ່ ້ ່ ່້ ້ ( Temporary
Object ) ໃນລະຫວາງເຊສເຊນ່ ີ ( Session ) ໜງໆຂອງຜູໃຊຶ່ ້ ້ ເຊງສາມາດໃຊວຽກິ່ ້
ໄດພຽງພາຍໃນເຊສເຊນນເທານນ້ ີ ີ ົ ັ້ ່ ້
ຕວຢາງົ ່ : “SQL SERVER” ຫຼື [SQL SERVER] ເປນການອາງເຖງອອບເຈກທຊັ ິ ັ ີ ື້ ່ ່
SQL SERVER
Mr. Phonepaseuth PHONHDALA 26
2.5.1. ການສາງາຕະລາງ້
2.5. ການຈດການກບຕາຕະລາງດວຍັ ັ ້ Transact-SQL
ມຮູບແບບຄາສງດງນີ ໍ ັ ັ ີ່ ່ ້:
CREATE TABBLE [database.[owner.]table_name
(
Column_name datatype [ identity | constraint | Null | NOT NULL]
| column_name AS computed_column_expression
[…]
)
[ON { filegroup | DEFAULT}]
Mr. Phonepaseuth PHONHDALA 27
ຕວຢາງົ ່ : ການສາງຕາຕະລາງ້
ຮູບທີ 2.12 ການສາງຕາຕະລາງດວຍຄາສງ້ ້ ໍ ັ່ Transact-SQL
Mr. Phonepaseuth PHONHDALA 28
2.5.2. ການແກໄຂຕາຕະລາງ້
ມຮູບແບບຄາສງດງນີ ໍ ັ ັ ີ່ ່ ້:
ALTER TABBLE table_name
{ [ ALTER COLUMN column_name
{ new_data_type [ ( precision [ , scale ] ) ]
[ COLLATE < collation_name > ]
[ NULL |NOT NULL ]
| { ADD | DROP } REWGUIDCOL }
]
| ADD
{ [ < column_definition > ]
| column_name AS computed_column_expression
} [ ,…n ]
| DROP
{ [ CONSTRAINT ] constaint_name
| COLUMN column } [ ,…n ]
}
Mr. Phonepaseuth PHONHDALA 29
ຕວຢາງົ ່ : ການເພມຖນໃໝໃຫກບຕາຕະລາງີ ັ ັ່ ່ ້
ການກາໜດໍ ົ NULL ຈະເຮດໃຫຣຄອດັ ີ້ ( record ) ທມຢູແລວເກບຄີ ີ ັ່ ່ ້ ່າ ບຮູຄໍ່ ້ ່າ
ໃຫກບຖນໃໝນ້ ່ັ ັ ີ້.
ສວນການກາໜດ່ ໍ ົ DEFAULT ຈະເຮດໃຫພຽງຣຄອດໃໝທຖກເພມເຂາມາຫງັ ີ ີ ື ີ ົ ັ້ ່ ່ ່ ້ ຼ
ຈາກທໄດເພມຖນໃໝນໄປແລວເທານນີ ີ ັ ີ ົ ັ່ ່ ້ ່ ້້ ່ ້ .
ຮູບທີ 2.13 ການເພມຖນໃຫກບຕາຕະລາງີ ັ ັ່ ້
Mr. Phonepaseuth PHONHDALA 30
ຕວຢາງົ ່ : ການປຽນປະເພດຂມູນທໃຊເກບ່ ້ໍ ີ ັ້ ່
ຮູບທີ 2.14 ການປຽນປະເພດຂອງຂມູນ່ ໍ້
ຕວຢາງົ ່ : ການລບຖນອອກຈາກຕາຕະລາງຶ ັ
ຮູບທີ 2.15 ການລບຖນອອກຈາກຕາຕະລາງຶ ັ
Mr. Phonepaseuth PHONHDALA 31
2.5.3. ການປຽນຊຕາຕະລາງ່ ື່
ມຮູບແບບຄາສງດງນີ ໍ ັ ັ ີ່ ່ ້:
sp_rename [ @objname = ] ‘object_name’, [ @newname = ] ‘new_name’
[ , [ @objtype = ] ‘object_type’ ]
ຕວຢາງົ ່ : ການປຽນຊຈາກຕາຕະລາງ່ ື່ tb_employees ເປນັ employees
ຮູບທີ 2.16 ການປຽນຊຕາຕະລາງ່ ື່
Mr. Phonepaseuth PHONHDALA 32
ຕວຢາງົ ່ : ການປຽນຊຖນ່ ື ັ່ ຈາກ FirstName ເປນັ Name
ຮູບທີ 2.17 ການປຽນຊຖນ່ ື ັ່ ( Column )
2.5.4. ການລບຕາຕະລາງຶ
ມຮູບແບບຄາສງດງນີ ໍ ັ ັ ີ່ ່ ້:
DROP TABLE table_name
Mr. Phonepaseuth PHONHDALA 33
ຕວຢາງົ ່ : ການລບຕາຕະລາງທຊຶ ີ ື່ ່ employees
ຮູບທີ 2.18 ການລບຕາຕະລາງຶ
2.5.5. Computed Column
ຮູບທີ 2.19 ການສາງຕາຕະລາງທມ້ ີ ີ່ Computed Column
Mr. Phonepaseuth PHONHDALA 34
2.6.1. ການສາງາຕະລາງ້
2.6. ການຈດການກບຕາຕະລາງດວຍັ ັ ້ Enterprise Manager
ມຂນຕອນດງນີ ັ ັ ີ້ ່ ້:
1. ເປດີ Enterprise Manager ຂນມື້ າ
2. ເຂາໄປຫາອອບເຈກົ ັ້ Table ເຊງຢູພາຍໃນຖານຂມູນທຕອງການິ ໍ ີ່ ້ ່່ ້
3. ກດເມາສຂວາໃສອອກເຈກົ ົ ັ໌ ່ Table ແລວເລອກລາຍການ້ ື New Table… ຫຼື
ເລອກເມນູື Action > New Table ຈະໄດດງຮູບທ້ ັ ີ່ 2.20
Column Name ເປນບອນກາໜດຊຖນັ ໍ ົ ື ັ່ ້
Data Type ເປນບອນກາໜດປະເພດຂມູນັ ໍ ົ ໍ່ ້
Length ເປນບອນກາໜດຂະໜາດຂອງປະເພດຂມູນັ ໍ ົ ໍ່ ້
Allow Nulls ເປນບອນກາໜດການຍອມຮບຄາບຮູັ ໍ ົ ັ ໍ່ ່ ້່
Mr. Phonepaseuth PHONHDALA 35
ເຮາຍງສາມາດກາໜດລາຍລະອຽດເພມເຕມໃຫກບແຕລະຖນຂມູນົ ັ ໍ ົ ີ ີ ັ ັ ໍ່ ້້ ່ ເຊງມລາຍລິ ີ່ ະ
ອຽດດງນັ ີ່ ້:
ຮູບທີ 2.20 ກາໜດໂຄງສາງຂອງຕາຕະລາງໍ ົ ້
Mr. Phonepaseuth PHONHDALA 36
Description ກາໜດຄາອະທບາຍໃຫກບຖນຂມູນໍ ົ ໍ ິ ັ ັ ໍ້ ້
Default Value ກາໜດຄາດຟອລຕໍ ົ ີ່ ໌ ຖກໃຊເມອການສາງຣຄອດື ື ີ້ ້່ ( Record )
ໃໝບໄດກາໜດຂມູນໃຫກບຖນນ່ ້ ້ໍ ໍ ົ ໍ ັ ັ ີ່ ້ ້
Precision and Scale ກາໜດຈານວນຖວນໍ ົ ໍ ້ ແລະຈານວນເສດໍ ສາລບຂມູນໍ ັ ໍ້
ທເປນຕວເລກີ ັ ົ່
Identity ມຄວາມໝາຍຄກບຟລດີ ື ັ ິ ໌ (Field) AutoNumber ໃນ MS Access
Is RowGuid ສາລບກາໜດໃຫປະເພດຂອງຟລດຂມູນເປນແບບໍ ັ ໍ ົ ິ ໍ ັ້ ໌ ້ uniqueidentifier
Formula ເປນບອນກາໜດສູດເພອຄດໄລຫາຜນໄດຮບກອນັ ໍ ົ ື ິ ົ ັ່ ່ ້ ່່ ແລວຈງຄອຍຈດ້ ່ິ ັ່
ເກບລງຟລດນັ ົ ິ ີ໌ ້
Collation ເປນການກາໜດັ ໍ ົ Collection ໃຫກບຟລດນ້ ໌ັ ິ ີ້ ໂດຍການກດປຸມົ ່
Mr. Phonepaseuth PHONHDALA 37
4. ຫງຈາກກາໜດຂມູນສາເລດແລວຼັ ໍ ົ ໍ ໍ ັ້ ້ ເຮາສາມາດກາໜດຄຫກົ ໍ ົ ີ ັຼ ( Primary Key ) ໃຫ້
ກບຕາຕະລາງໄດັ ້ ໂດຍການກດເມາສໃສຟລດທຕອງການົ ົ ິ ີ໌ ່ ໌ ້່ ຈາກນນຈງກດປຸມັ ິ ົ້ ່ ່
ຮູບທີ 2.21 ໄດອະລອກບອກເພອຕງຊຕາຕະລາງັ ັ ື ັ ື່ ້ ່
5. ກດປຸມົ ່ ຈະມໄດອະລອກບອກີ ັ ັ ( Dialog box ) ໃຫຕງຊຕາຕະລາງປະກດຂນ້ ັ ື ົ ື້ ່ ້
ດງຮູບທັ ີ່ 2.21 ຫງຈາກຕງຊຕາຕະລາງຮຽບຮອຍແລວກດປຸມຼັ ັ ື ົ້ ່ ້ ້ ່
2.6.2. ການປຽນຊຕາຕະລາງ່ ື່
ມຂນຕອນດງນີ ັ ັ ີ້ ່ ້:
1. ກດເມາສຂວາໃສຊຂອງຕາຕະລາງທຕອງການົ ົ ື ີ໌ ່ ້່ ່ ແລວເລອກລາຍການ້ ື Rename
Mr. Phonepaseuth PHONHDALA 38
2. ປຽນຊໃໝຕາມຕອງການ່ ່ ້ື່ ແລວກດແປນ້ ້ົ Enter
ຮູບທີ 2.22 ຂຄວາມຢນຢນການປຽນຊຕາຕະລາງໍ ື ັ ື້ ່່
ກດປຸມົ ່ ເພອກວດສອບຜນກະທບກບອອບເຈກອນື ົ ົ ັ ັ ື່ ່ ໆ ທອາດີ່
ຈະມຄວາມສາພນກບຕາຕະລາງທຕອງການປຽນຊນກອນໄດີ ໍ ັ ັ ີ ື ີ່ ້ ້້ ່ ່ ້
2. ກດປຸມົ ່ ເພອປຽນຊຕາຕະລາງື ື່ ່່
3. ກດປຸມົ ່ OK
Mr. Phonepaseuth PHONHDALA 39
2.6.3. ການລບຕາຕະລາງຶ
ມຂນຕອນດງນີ ັ ັ ີ້ ່ ້:
1. ກດເມາສຂວາໃສຊຂອງຕາຕະລາງທຕອງການົ ົ ື ີ໌ ່ ້່ ່ ແລວເລອກລາຍການ້ ື Delete
2. ກດົ
ຮູບທີ 2.23 ໜາຈສະແດງຕາຕະລາງທຈະຖກລບ້ ໍ ີ ື ຶ່
===== =====

More Related Content

More from Phonepaseuth Phonhdala

Lab 16 ອອກແບບໜ້າຈໍສຳເລັບ chat
Lab 16 ອອກແບບໜ້າຈໍສຳເລັບ chatLab 16 ອອກແບບໜ້າຈໍສຳເລັບ chat
Lab 16 ອອກແບບໜ້າຈໍສຳເລັບ chatPhonepaseuth Phonhdala
 
Lab 15 ການດຶງຂໍ້ມູນຈາກ Firebase ມາສະແດງໃນໜ້າແອ໋ບ
Lab 15 ການດຶງຂໍ້ມູນຈາກ Firebase ມາສະແດງໃນໜ້າແອ໋ບLab 15 ການດຶງຂໍ້ມູນຈາກ Firebase ມາສະແດງໃນໜ້າແອ໋ບ
Lab 15 ການດຶງຂໍ້ມູນຈາກ Firebase ມາສະແດງໃນໜ້າແອ໋ບPhonepaseuth Phonhdala
 
Lab 14 Storage ແລະ Database ໃນ Firebase
Lab 14 Storage ແລະ Database ໃນ FirebaseLab 14 Storage ແລະ Database ໃນ Firebase
Lab 14 Storage ແລະ Database ໃນ FirebasePhonepaseuth Phonhdala
 
Lab 13 ການລົບມູນແຫຼມ EditText, Button ແລະການເລືອກຮູບ
Lab 13 ການລົບມູນແຫຼມ EditText, Button ແລະການເລືອກຮູບLab 13 ການລົບມູນແຫຼມ EditText, Button ແລະການເລືອກຮູບ
Lab 13 ການລົບມູນແຫຼມ EditText, Button ແລະການເລືອກຮູບPhonepaseuth Phonhdala
 
ການເພີ່ມ, ແກ້ໄຂ, ລຶບ ຂໍ້ມູນ
ການເພີ່ມ, ແກ້ໄຂ, ລຶບ ຂໍ້ມູນການເພີ່ມ, ແກ້ໄຂ, ລຶບ ຂໍ້ມູນ
ການເພີ່ມ, ແກ້ໄຂ, ລຶບ ຂໍ້ມູນPhonepaseuth Phonhdala
 
ການກະກຽມຂໍ້ມູນ (Prepare data)
ການກະກຽມຂໍ້ມູນ (Prepare data)ການກະກຽມຂໍ້ມູນ (Prepare data)
ການກະກຽມຂໍ້ມູນ (Prepare data)Phonepaseuth Phonhdala
 
ພາກປະຕິບັດ 9 (Lab 9) ຈັດການຖານຂໍ້ມູນ
ພາກປະຕິບັດ 9 (Lab 9) ຈັດການຖານຂໍ້ມູນ ພາກປະຕິບັດ 9 (Lab 9) ຈັດການຖານຂໍ້ມູນ
ພາກປະຕິບັດ 9 (Lab 9) ຈັດການຖານຂໍ້ມູນ Phonepaseuth Phonhdala
 
ພາກປະຕິບັດ 8 (Lab 8)
ພາກປະຕິບັດ 8 (Lab 8)ພາກປະຕິບັດ 8 (Lab 8)
ພາກປະຕິບັດ 8 (Lab 8)Phonepaseuth Phonhdala
 
ພາກປະຕິບັດ 7 (Lab 7)
ພາກປະຕິບັດ 7 (Lab 7)ພາກປະຕິບັດ 7 (Lab 7)
ພາກປະຕິບັດ 7 (Lab 7)Phonepaseuth Phonhdala
 
ພາກປະຕິບັດ 6 (Lab 6) ການໃຊ້ CheckBox
ພາກປະຕິບັດ 6 (Lab 6) ການໃຊ້ CheckBoxພາກປະຕິບັດ 6 (Lab 6) ການໃຊ້ CheckBox
ພາກປະຕິບັດ 6 (Lab 6) ການໃຊ້ CheckBoxPhonepaseuth Phonhdala
 
ພາກປະຕິບັດ 5 (Lab 5) ການນຳໃຊ້ RadioButton
ພາກປະຕິບັດ 5 (Lab 5) ການນຳໃຊ້ RadioButtonພາກປະຕິບັດ 5 (Lab 5) ການນຳໃຊ້ RadioButton
ພາກປະຕິບັດ 5 (Lab 5) ການນຳໃຊ້ RadioButtonPhonepaseuth Phonhdala
 
ພາກປະຕິບັດ 4 (Lab 4) ການເປິດActivity ໃໝ່
ພາກປະຕິບັດ 4 (Lab 4) ການເປິດActivity ໃໝ່ພາກປະຕິບັດ 4 (Lab 4) ການເປິດActivity ໃໝ່
ພາກປະຕິບັດ 4 (Lab 4) ການເປິດActivity ໃໝ່Phonepaseuth Phonhdala
 

More from Phonepaseuth Phonhdala (20)

Lab 16 ອອກແບບໜ້າຈໍສຳເລັບ chat
Lab 16 ອອກແບບໜ້າຈໍສຳເລັບ chatLab 16 ອອກແບບໜ້າຈໍສຳເລັບ chat
Lab 16 ອອກແບບໜ້າຈໍສຳເລັບ chat
 
Lab 15 ການດຶງຂໍ້ມູນຈາກ Firebase ມາສະແດງໃນໜ້າແອ໋ບ
Lab 15 ການດຶງຂໍ້ມູນຈາກ Firebase ມາສະແດງໃນໜ້າແອ໋ບLab 15 ການດຶງຂໍ້ມູນຈາກ Firebase ມາສະແດງໃນໜ້າແອ໋ບ
Lab 15 ການດຶງຂໍ້ມູນຈາກ Firebase ມາສະແດງໃນໜ້າແອ໋ບ
 
Lab 14 Storage ແລະ Database ໃນ Firebase
Lab 14 Storage ແລະ Database ໃນ FirebaseLab 14 Storage ແລະ Database ໃນ Firebase
Lab 14 Storage ແລະ Database ໃນ Firebase
 
Lab 13 ການລົບມູນແຫຼມ EditText, Button ແລະການເລືອກຮູບ
Lab 13 ການລົບມູນແຫຼມ EditText, Button ແລະການເລືອກຮູບLab 13 ການລົບມູນແຫຼມ EditText, Button ແລະການເລືອກຮູບ
Lab 13 ການລົບມູນແຫຼມ EditText, Button ແລະການເລືອກຮູບ
 
Lab 12 Firebase Authentication
Lab 12 Firebase AuthenticationLab 12 Firebase Authentication
Lab 12 Firebase Authentication
 
Lab 11 qr and bar code
Lab 11 qr and bar codeLab 11 qr and bar code
Lab 11 qr and bar code
 
Lab 10 gride view
Lab 10 gride viewLab 10 gride view
Lab 10 gride view
 
Lab 9 list view
Lab 9 list viewLab 9 list view
Lab 9 list view
 
Lab 3 date picker dialog
Lab 3 date picker dialogLab 3 date picker dialog
Lab 3 date picker dialog
 
Lab 2 time picker dialog
Lab 2 time picker dialogLab 2 time picker dialog
Lab 2 time picker dialog
 
ການເພີ່ມ, ແກ້ໄຂ, ລຶບ ຂໍ້ມູນ
ການເພີ່ມ, ແກ້ໄຂ, ລຶບ ຂໍ້ມູນການເພີ່ມ, ແກ້ໄຂ, ລຶບ ຂໍ້ມູນ
ການເພີ່ມ, ແກ້ໄຂ, ລຶບ ຂໍ້ມູນ
 
ການກະກຽມຂໍ້ມູນ (Prepare data)
ການກະກຽມຂໍ້ມູນ (Prepare data)ການກະກຽມຂໍ້ມູນ (Prepare data)
ການກະກຽມຂໍ້ມູນ (Prepare data)
 
ພາກປະຕິບັດ 9 (Lab 9) ຈັດການຖານຂໍ້ມູນ
ພາກປະຕິບັດ 9 (Lab 9) ຈັດການຖານຂໍ້ມູນ ພາກປະຕິບັດ 9 (Lab 9) ຈັດການຖານຂໍ້ມູນ
ພາກປະຕິບັດ 9 (Lab 9) ຈັດການຖານຂໍ້ມູນ
 
ພາກປະຕິບັດ 8 (Lab 8)
ພາກປະຕິບັດ 8 (Lab 8)ພາກປະຕິບັດ 8 (Lab 8)
ພາກປະຕິບັດ 8 (Lab 8)
 
ພາກປະຕິບັດ 7 (Lab 7)
ພາກປະຕິບັດ 7 (Lab 7)ພາກປະຕິບັດ 7 (Lab 7)
ພາກປະຕິບັດ 7 (Lab 7)
 
ພາກປະຕິບັດ 6 (Lab 6) ການໃຊ້ CheckBox
ພາກປະຕິບັດ 6 (Lab 6) ການໃຊ້ CheckBoxພາກປະຕິບັດ 6 (Lab 6) ການໃຊ້ CheckBox
ພາກປະຕິບັດ 6 (Lab 6) ການໃຊ້ CheckBox
 
ພາກປະຕິບັດ 5 (Lab 5) ການນຳໃຊ້ RadioButton
ພາກປະຕິບັດ 5 (Lab 5) ການນຳໃຊ້ RadioButtonພາກປະຕິບັດ 5 (Lab 5) ການນຳໃຊ້ RadioButton
ພາກປະຕິບັດ 5 (Lab 5) ການນຳໃຊ້ RadioButton
 
Chapter2
Chapter2Chapter2
Chapter2
 
Chapter1
Chapter1Chapter1
Chapter1
 
ພາກປະຕິບັດ 4 (Lab 4) ການເປິດActivity ໃໝ່
ພາກປະຕິບັດ 4 (Lab 4) ການເປິດActivity ໃໝ່ພາກປະຕິບັດ 4 (Lab 4) ການເປິດActivity ໃໝ່
ພາກປະຕິບັດ 4 (Lab 4) ການເປິດActivity ໃໝ່
 

Chapter2

  • 1. Mr. Phonepaseuth PHONHDALA 1 SQL Server 2000 ພາກທີ 2 ການສາງຕາຕະລາງ້ • ຮູບທີ 2.1 • ການປຽບທຽບຕາຕະລາງ ກບຖານຂມູນັ ໍ້ ໃນທາງ Physical
  • 2. Mr. Phonepaseuth PHONHDALA 2 2.1. ສວນປະກອບຂອງຕາຕະລາງ່ 2.1.1. ຖນັ ( Column ) 2.1.2. ແຖວ( Row ) ຮູບທີ 2.2 ສວນປະກອບຂອງຕາຕະລາງ່ A B C D E F G HColumn Name 1 2 3 4 5 Row Number 1 2 3 4 5 6 7 8 Column Number
  • 3. Mr. Phonepaseuth PHONHDALA 3 ຄວາມສາມາດຂອງ SQL Server 2000 ພາຍໃນ 1 ຖານຂມູນສາມາດບນຈຸຕາຕະລາງໄວໄດຫາຍເຖງໍ ັ ິ້ ້ ້ ຼ 2 ພນລານຕັ ້ າ ຕະລາງ ພາຍໃນ 1 ຕາຕະລາງສາມາດມຈານວນຖນໄດຫາຍສຸດີ ໍ ັ ້ ຼ 1,024 ຖນັ ຂມູນທສາມາດຈດເກບໄດໃນແຕລະຖນມຂະໜາດສູງສຸດໍ ີ ັ ັ ັ ີ້ ່ ້ ່ 8,000 byte ເຊງບິ ໍ່ ່ ໄດນບຂມູນປະເພດ້ ັ ໍ້ Text ແລະ Binary ເຊງເກບໄດເຖງິ ັ ິ່ ້ 2 GB ແຕຂມູນບໄດເກບໄວໃນຕາຕະລາງຈງ່ ້ ້ໍ ໍ ັ ິ້ ່ ມພຽງພອຍເຕີ ີ(pointer) ເຊງສາມາດິ່ ລງິ (link) ໄປຍງຖານຂມູນທເກບໄວເທານນັ ໍ ີ ັ ົ ັ້ ່ ່ ້້ .
  • 4. Mr. Phonepaseuth PHONHDALA 4 2.1.3. ຄຫກີ ັຼ ( Primary Key ) ຖນທຈະເລອກມາເປນຄຫກັ ີ ື ັ ີ ັ່ ຼ ( Primary Key ) ຕອງບນຈຸຂມູນທບສາມາດຊາກນ້ ັ ໍ ີ ໍ ໍ ັ້ ່ ່ ້ CustomerID CustomerName CustomerAddress 1234 ສສຸກອນີ ໜວຍ 10 ບານພະບາດ, ເມອງຫວງພະບາງື ຼ 1235 ລາເງນໍ ິ ໜວຍ 5 ບານຊຽງແມນ, ເມອງຈອມເພດື ັ 1236 ແສງຄາໍ ໜວຍ 1 ບານແອນ, ເມອງຊຽງເງນື ິ OrderID ProductID Quantity 1000 1000 1002 WAM105 3 1003 TVC108 20 TVC100 10 RFG100 5 Customer Table – Primary Key( CustomerID ) ຮູບທີ 2.3 ຄຫກຂອງຕາຕະລາງີ ັຼ Customer OrderDetail Table – Primary Key( OrderID, ProductID ) ຮູບທີ 2.4 ຄຫກທປະກອບກນລະຫວາງີ ັ ີ ັຼ ່ ່ 2 ຖນັ
  • 5. Mr. Phonepaseuth PHONHDALA 5 2.1.4. ຄນອກີ ( Foreign Key ) CustomerID CustomerName CustomerAddress 1234 ສສຸກອນີ ໜວຍ 10 ບານພະບາດ, ເມອງຫວງພະບາງື ຼ 1235 ລາເງນໍ ິ ໜວຍ 5 ບານຊຽງແມນ, ເມອງຈອມເພດື ັ 1236 ແສງຄາໍ ໜວຍ 1 ບານແອນ, ເມອງຊຽງເງນື ິ ເປນຖນທບແມນຄຫກຂອງຕາຕະລາງັ ັ ີ ໍ ີ ັ່ ່ ່ ຼ , ແຕກາຍເປນຄຫກໃຫກບຕາຕ່ ້ັ ີ ັ ັຼ ະ ລາງອນໄດື່ ້ OrderID OrderDate CustomerID 102 10/9/2006 1236 100 5/1/2006 1234 101 10/9/2006 1235 103 15/7/2006 1236 Order Table – Primary Key( OrderID ), Foreign( CustomerID ) Customer Table – Primary Key( CustomerID ) ຮູບທີ 2.5 ຄວາມສາພນລະຫວາງຄນອກໍ ັ ີ່ ແລະຄຫກີ ັຼ
  • 6. Mr. Phonepaseuth PHONHDALA 6 2.2. ການເຮດັ Normalization ເປນວທການອອກແບບຕາຕະລາງຕາມກດເກນມາດຕະຖານັ ິ ີ ົ ເພອລຸດຄວາມຊາຊອນຂອງຂມູນໃນຕາຕະລາງດຽວກນື ໍ ໍ ັ່ ້ ້້ ເພອຄວາມສະດວກໃນການປຽນແປງຂມູນື ໍ່ ້່ ( Udate ) ເພອຄວາມສະດວກໃນການເພມຂມູນື ີ ໍ່ ່ ້ ( insert ) ເພອຄວາມສະດວກໃນການລບຂມູນື ຶ ໍ່ ້ ( Delete ) OrderID OrderDate CustID CustName CustAddrees ProductID ProName ProColor 5555 TVC100 RFG100 WAM105 IRN110 RFG100 TVC108 1003 15/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ WAM104 ຈກຊກເຄອງັ ັ ື່ ເຫອງຼື 15 ? ? ? ? ? POT107 ໝຫຸງເຂໍ ົ້ ້າ ຂາວ ? 5555 ບວົທລະທດສໍ ັ ີ ຕູເຢນ້ ັ ຈກຊກເຄອງັ ັ ື່ ເຕາລດົ ີ 5555 ຕູເຢນ້ ັ ແດງ ຂຽວ ຟາ້ ແດງ 5666 5666 1002 12/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ ດາໍ 7ທລະທດສໍ ັ ີ Quaritity 1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 10 1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 5 1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 3 1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ 20 1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ 8 Update Many Place Unknown Value Lost Information ຮູບທີ 2.6 ບນຫາເນອງຈາກການອອກແບບຕາຕະລາງບດັ ື ໍ ີ່ ່
  • 7. Mr. Phonepaseuth PHONHDALA 7 2.2.1. First Normal Form ( 1NF ) ມກດເກນດງນີ ົ ັ ີ່ ້: ຕາຕະລາງຄວາມສາພນໃດໍ ັຕາຕະລາງຄວາມສາພນໃດໍ ັ ໆໆ ຈະເປນັຈະເປນັ 1NF1NF ກຕເມອບມກຸມຂມູນຊາໍ ໍ ື ໍ ີ ໍ ໍ່ ່ ່ ່ ້ ້່ກຕເມອບມກຸມຂມູນຊາໍ ໍ ື ໍ ີ ໍ ໍ່ ່ ່ ່ ້ ້່ ( Repeating( Repeating Group)Group) ແແລະແບງຍອຍອກບໄດແລວ່ ່ ້ ້ີ ໍ່ລະແບງຍອຍອກບໄດແລວ່ ່ ້ ້ີ ໍ່ ( Atomicity )( Atomicity ) OrderID OrderDate CustomerID CustomerName CustomerAddrees ItemDetails TVC100, ທລະທດສໍ ັ ີ, ບວົ , 10 RFG100, ຕູເຢນ້ ັ , ແດງ, 5 WAM105, ຈກຊກເຄອງັ ັ ື່ , ຂຽວ, 3 IRN110, ເຕາລດົ ີ , ຟາ້ , 20 RFG100, ຕູເຢນ້ ັ , ແດງ, 8 TVC108, ທລະທດສໍ ັ ີ, ດາໍ , 7 1003 15/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ WAM104, ຈກຊກເຄອງັ ັ ື່ , ເຫອງຼື , 15 5555 5666 1002 12/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ 1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ Original Data ຕາຕະລາງຕໄປນເປນຂມູນດບທໄດຈາກການສງຊສນຄໍ ີ ັ ໍ ິ ີ ັ ື ິ່ ້ ້ ່ ່ ້້ ້າ ເຫນວາຂມູນໃນຖນັ ່ ໍ ັ້ ItemDetails ເຮດໃຫເກດກຸມຂມູນຊາັ ີ ໍ ໍ້ ່ ້ ້ ແລະຍງບເປນຕາຕະລາງຄວາມັ ໍ ັ່ ສາພນໍ ັ , ເພາະວາຂມູນໜງໆຈະຕອງມຖນຄບຖວນ່ ້ ້ໍ ຶ ີ ັ ົ້ ່ . ຮູບທີ 2.7 ຕວຢາງຂມູນດບຂອງການສງຊສນຄົ ໍ ິ ັ ື ິ່ ້້ ່ ້ າ
  • 8. Mr. Phonepaseuth PHONHDALA 8 OrderID OrderDate CustomerID CustomerName CustomerAddrees ItemDetails 5555 TVC100, ທລະທດສໍ ັ ີ, ບວົ , 10 RFG100, ຕູເຢນ້ ັ , ແດງ, 5 WAM105, ຈກຊກເຄອງັ ັ ື່ , ຂຽວ, 3 IRN110, ເຕາລດົ ີ , ຟາ້ , 20 RFG100, ຕູເຢນ້ ັ , ແດງ, 8 TVC108, ທລະທດສໍ ັ ີ, ດາໍ , 7 1003 15/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ WAM104, ຈກຊກເຄອງັ ັ ື່ , ເຫອງຼື , 15 5555 5555 5666 5666 1002 12/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ 1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ 1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ ເຮາສາມາດແກໄຂໄດດງຕາຕະລາງຕໄປນົ ັ ໍ ີ້ ້ ່ ່ ້ ຮູບທີ 2.8 ຕາຕະລາງຄວາມສາພນຂອງການສງຊສນຄໍ ັ ັ ື ິ່ ້ ້າ( Order Table) OrderID OrderDate CustID CustName CustAddrees ProductID ProName ProColor 5555 TVC100 RFG100 WAM105 IRN110 RFG100 TVC108 1003 15/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ WAM104 ຈກຊກເຄອງັ ັ ື່ ເຫອງຼື 15 5555 ບວົທລະທດສໍ ັ ີ ຕູເຢນ້ ັ ຈກຊກເຄອງັ ັ ື່ ເຕາລດົ ີ 5555 ຕູເຢນ້ ັ ແດງ ຂຽວ ຟາ້ ແດງ 5666 5666 1002 12/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ ດາໍ 7ທລະທດສໍ ັ ີ Quaritity 1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 10 1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 5 1000 10/07/2005 ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 3 1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ 20 1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ 8 ຮູບທີ 2.9 ຕາຕະລາງຄວາມສາພນຂອງການສງຊສນຄາທເປນໍ ັ ັ ື ິ ີ ັ່ ້ ່້ 1NF Order Table – Primary Key( OrderID, ProdustID )
  • 9. Mr. Phonepaseuth PHONHDALA 9 2.2.2. Second Normal Form ( 2NF ) ມກດເກນດງນີ ົ ັ ີ່ ້: ຕາຕະລາງຄວາມສາພນໃດໍ ັຕາຕະລາງຄວາມສາພນໃດໍ ັ ໆໆ ຈະເປນັຈະເປນັ 2NF2NF ກຕເມອຕອງເປນໍ ໍ ື ັ່ ່ ່ ້ກຕເມອຕອງເປນໍ ໍ ື ັ່ ່ ່ ້ 1NF1NF ມາກອນ່ມາກອນ່ ແລະແລະ ຖນທບແມນຄຂອງຕາຕະລາງຕອງຂນກບຄຫກທຸກຕວັ ີ ໍ ີ ື ັ ີ ັ ົ່ ່ ້່ ້ ຼຖນທບແມນຄຂອງຕາຕະລາງຕອງຂນກບຄຫກທຸກຕວັ ີ ໍ ີ ື ັ ີ ັ ົ່ ່ ້່ ້ ຼ ກດເກນສາລບົ ໍ ັ 2NF ນໃຊກບຕາຕະລາງທມຄຫກຫາຍກວີ ັ ີ ີ ີ ັ້ ່້ ່ຼ ຼ າ 2 ຄຂນໄປີ ື້ . ດງນນເຮາຕອງພັ ັ ົ ິ່ ້ ້ ຈາລະນາວ່າ ມຖນໃດທບໄດເປນຄຫກີ ັ ີ ໍ ັ ີ ັ່ ່ ້ ຼ ແຕຂນຢູກບພຽງບາງຖນຂອງຄຮວມຫບເທານນ່ ່ ່ື ັ ັ ີ ື ໍ ົ ັ້ ່ ່ ້ຼ . ຈາກຮູບທີ 2.9 ເຮາຈະເຫນວົ ັ ່າ: ຖນັ OrderDate, CustomerID, CustomerName ແລະ CustomerAddress ຕາງກຂນກບຖນ່ ໍ ື ັ ັ່ ້ OrderID ຖນັ ProdustName ແລະ ProdustColor ຈະຂນກບຖນື ັ ັ້ ProdustID ມພຽງຖນີ ັ Quantity ຈະຂນກບຄຮວມທງສອງຄື ັ ີ ັ ື້ ່ OrderID ແລະ ProdustID ດງນນເຮາຈງສາມາດແຍກຕາຕະລາງຄວາມສາພນອອກມາເພອໃຫຢູໃນຮູບຮາັ ັ ົ ິ ໍ ັ ື່ ້ ່ ່ ້ ່ ່ ງ 2NF ດງນັ ີ່ ້:
  • 10. Mr. Phonepaseuth PHONHDALA 10 OrderID OrderDate CustomerID CustomerName CustomerAddrees 1000 10/07/2005 5555 5666 1002 12/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ 1003 15/07/2005 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ 1001 12/07/2005 ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ OrderID ProductID Quaritity 1000 TVC100 RFG100 WAM105 IRN110 RFG100 TVC108 1003 WAM104 15 10 1000 5 1000 3 1001 20 1001 8 1002 7 Order Detail Table – Key( OrderID, ProductID ) ຮູບທີ 2.10 ຕາຕະລາງຄວາມສາພນຕາງໆທເປນໍ ັ ີ ັ່ ່ 2NF ProductID ProductName ProductColor TVC100 WAM105 IRN110 RFG100 TVC108 WAM104 ຈກຊກເຄອງັ ັ ື່ ເຫອງຼື ບວົທລະທດສໍ ັ ີ ຈກຊກເຄອງັ ັ ື່ ເຕາລດົ ີ ຕູເຢນ້ ັ ຂຽວ ຟາ້ ແດງ ດາໍທລະທດສໍ ັ ີ Product Table – Key( ProductID ) Order Table – Key( OrderID )
  • 11. Mr. Phonepaseuth PHONHDALA 11 2.2.3. Third Normal Form ( 3NF ) ມກດເກນດງນີ ົ ັ ີ່ ້: ຕາຕະລາງຄວາມສາພນໃດໍ ັຕາຕະລາງຄວາມສາພນໃດໍ ັ ໆໆ ຈະເປນັຈະເປນັ 3NF3NF ກຕເມອຕອງເປນໍ ໍ ື ັ່ ່ ່ ້ກຕເມອຕອງເປນໍ ໍ ື ັ່ ່ ່ ້ 2NF2NF ມາກອນ່ມາກອນ່ ແລະແລະ ບມຖນອນໃດໃນຕາຕະລາງໄປຂນກບຖນທບແມນຄຕວໃດໜງໃນຕາຕະລາໍ ີ ັ ື ື ັ ັ ີ ໍ ີ ົ ຶ່ ່ ້ ່ ່ ່່ບມຖນອນໃດໃນຕາຕະລາງໄປຂນກບຖນທບແມນຄຕວໃດໜງໃນຕາຕະລາໍ ີ ັ ື ື ັ ັ ີ ໍ ີ ົ ຶ່ ່ ້ ່ ່ ່່ ງງ ແແທນທີ່ທນທີ່ ຈະຂນຢູສະເພາະກບຄຫກເທານນື ັ ີ ັ ົ ັ້ ່ ້່ ຼຈະຂນຢູສະເພາະກບຄຫກເທານນື ັ ີ ັ ົ ັ້ ່ ້່ ຼ ການພຈາລະນາຕາຕະລາງຄວາມສາພນທຢູໃນຮູບຂອງິ ໍ ັ ີ່ ່ 3NF ນນັ້ ໃຫເບງວາມຖນໃດ້ ່ິ ີ ັ່ ທບເປນຄຫກີ ໍ ັ ີ ັ່ ່ ຼ ແຕມຄວາມສາມາດໄປຂນຢູກບຖນ່ ່ີ ື ັ ັ້ ຫກຸມຂອງຖນທບແມນຄຫກໄດຼ ຼື ັ ີ ໍ ີ ັ່ ່ ້່ ່ ຫາກພຈະລະນາຕາຕະລາງຄວາມສາພນຈາກຮູບທິ ໍ ັ ີ 2.10 ຈະເຫນວາຕາຕະລາງັ ່ Order ຈະມຖນີ ັ CustomerName ແລະ CustomerAddress ຕາງກສາມາດຂນກບຖນ່ ໍ ື ັ ັ່ ້ CustomerID ໄດ້ ດງນນເຮາຈງຕອງແຍກຕາຕະລາງຄວາມສາພນອອກມາຈາກຕາຕະລາງັ ັ ົ ິ ໍ ັ່ ້ ່ ້ ເກາົ່ ເຊງຈະໄດດງຮູບທິ ັ ີ່ ່້ 2.11
  • 12. Mr. Phonepaseuth PHONHDALA 12 OrderID OrderDate CustomerID 1000 10/07/2005 5555 5666 1002 12/07/2005 5999 1003 15/07/2005 5999 1001 12/07/2005 CustomerID CustomerName CustomerAddrees 5555 5666 5999 ມະນລດີ ັ ໜວຍ່ 35 ດງໂດກົ ນ.ຄ ມະນວນີ ັ ໜວຍ່ 10 ທງຂນຄາົ ັ ໍ່ ນ.ຄ ດາວຮຸງ່ ໜວຍ່ 20 ຕານມໄຊີ ນ.ຄ Order Table – Key( OrderID ) Customer Table – Key( CustomerID ) ຮູບທີ 2.11 ຜນການແຍກຕາຕະລາງຄວາມສາພນໃຫເປນົ ໍ ັ ັ້ 3NF ຈາກຮູບທີ 2.11 ຈະພບວາຫງຈາກການແຍກອອກເປນຕາຕະລາງຍອຍແລວົ ັ ັ່ ່ ້ຼ ຄວາມ ຊາຊອນຂອງຂມູນໄດລຸດລງໄປອກໍ ໍ ົ ີ້ ້້ ້ ເຊນັ່ : ໃນຕາຕະລາງ Customer ແຕກອນເຄຍເກບ່ ່ ີ ັ ຂມູນລູກຄາຊໍ ື້ ່້ ມະນລດີ ັ ເຖງິ 2 ລາຍການ, ໃນຕອນນຈະເຫອພຽງລາຍການດຽວເທານນີ ື ົ ັ້ ່ ້ຼ ເພາະລາຍການສງຊຂອງລູກຄາຄນນໄດຖກກາໜດໄວໃນຕາຕະລາງັ ື ົ ີ ື ໍ ົ່ ້ ້້ ້ ້ Order ແລວນນ້ ັ້ ເອງ.
  • 13. Mr. Phonepaseuth PHONHDALA 13 2.3.1. ບຮູຄໍ່ ້ ່າ ( Null ) 2.3. ປະເພດຂອງຂມູນໍ້ ( Data Type) 2.3.2. String ປກກະຕແລວຄາຂມູນຂອງເຣຄອດໃນແຕລະຖນຈະຖກເກບຄາຕາມປະເພດຂມູນົ ິ ໍ ັ ື ັ ໍ້ ່ ່ ່້ ້ ທກາໜດໄວີ ໍ ົ່ ້ ແຕກມບາງກລະນທບສາມາດກາໜດຄາໃຫກບຂມູນໃນຕາແໜງດງ່ ່ ້ ່ໍ ີ ໍ ີ ີ ໍ ໍ ົ ັ ໍ ໍ ັ່ ່ ່ ້ ່ ກາວໄດດວຍເຫດນຈງມຄາຂມູນປະເພດໜງເອນວ່ ້ ້ ່ ່ີ ິ ີ ໍ ຶ ີ້ ່ ້ ່ ້ າ: ບຮູຄໍ່ ້ ່າ( Null ) ເປນປະເພດຂມູນທສາມາດໃຊເກບອກຂະຣະຕາງັ ໍ ີ ັ ັ້ ່ ້ ່ ໆ ລວມທງຕວອກສອນັ ົ ັ , ຕວົ ເລກ ຫສນຍາລກຼື ັ ັ . ສາມາດເກບຂມູນໃນແຕລະຖນໄດສຸງສຸດບເກນັ ໍ ັ ໍ ີ້ ່່ ້ 8,000 ອກຂະຣັ ະ String ແບງອອກເປນ່ ັ 2 ປະເພດຄື: Char (n) ແລະ varchar (n) ຂມູນທຕອງການເກບໍ ີ ັ້ ່ ້ ຂມູນທຖກຈດເກບຈງໍ ີ ື ັ ັ ິ້ ່ char(6) ຂມູນທຖກຈດເກບຈງໍ ີ ື ັ ັ ິ້ ່ varchar(6) Microsoft Micros Micros SQL SQL*** SQL Server Server Server ຕາຕະລາງທີ 2.1 ຕວຢາງການຈດເກບຂມູນປະເພດົ ັ ັ ໍ່ ້ String
  • 14. Mr. Phonepaseuth PHONHDALA 14 2.3.3. Binary ເປນປະເພດຂມູນທຈດເກບຄາແບບໄບນາຣຄັ ໍ ີ ັ ັ ີ ື້ ່ ່່ : ລຽງກນເປນຊຸດຕວເລກັ ັ ົ 0 ແລະ 1 ແຕໃນການນາຄາຂມູນເຂາແລະອອກຈາກລະບບຈະສະແດງໃຫເຫນເປນເປນຄາຂອ່ ່ ້ ່ໍ ໍ ົ ົ ັ ັ້ ້ ັ ງ ເລກຖານ 16 (0-9 ແລະ A-F) ຂມູນທຕອງການຈດເກບໍ ີ ັ ັ້ ່ ້ ຂມູນທຈະຖກຈດເກບຈງໍ ີ ື ັ ັ ິ້ ່ binary(2) ຂມູນທຈະຖກຈດເກບຈງໍ ີ ື ັ ັ ິ້ ່ varbinary(2) 0x0 0x0000 0x0 0x1 0x0100 0x1 0x11 0x1100 0x11 0x111 0x0111 0x111 ຕາຕະລາງທີ 2.2 ຕວຢາງການຈດເກບຂມູນປະເພດົ ັ ັ ໍ່ ້ Binary ໄບນາຣີ່ (Binary) ແບງການເກບຂມູນອອກເນ່ ັ ໍ້ 2 ລກສະນະຄັ ື: Binary (n) ມຄວາມໝາຍຄກນກບີ ື ັ ັ char (n) Varbinary (n) ມຄວາມໝາຍຄກນກບີ ື ັ ັ varchar (n)
  • 15. Mr. Phonepaseuth PHONHDALA 15 2.3.4. Integer ເປນປະເພດຂອງຂມູນທໃຊເກບພຽງຄາຕວເລກັ ໍ ີ ັ ົ້ ່ ້ ່ , ໂດຍແບງອອກເປນ່ ັ 3 ປະເພດ ຕາມຂະໜາດການເກບຂມູນັ ໍ້ ດງຕາຕະລາງທັ ີ່ 2.3 ປະເພດ ຂະໜາດຂມູນໍ້ ( byte) ຈານວນຄາທງໝດໍ ັ ົ່ ຄາທນາມາໃຊ່ ້ີ ໍ່ tinyint 1 28 = 256 0 ເຖງິ 255 Smallint 2 -215 ເຖງິ 215 -1 -32,768 ເຖງິ 32,767 Int 4 -231 ເຖງິ 231 -1 -2,147,483,648 ເຖງິ 2,147,483,648 bigint 8 -263 ເຖງິ 263 -1 -9223372036854775808 ເຖງິ 9223372036854775807 Smallint, int ແລະ bigint ໃຊ້ 1 ບດິ (bite) ສາລບເກບຄາເຄອງໝາຍໍ ັ ັ ື່ ່ ເຮດັ ໃຫຕອງລຸດຈະນວນບດລງ້ ້ ິ ົ 1 ໃນການຄານວນຄາຄໍ ື່ : 215, 231 ແລະ 263 ຕາມລາໍ ດບັ . ຕາຕະລາງທີ 2.3 ຕວຢາງການຈດເກບຂມູນປະເພດົ ັ ັ ໍ່ ້ Integer
  • 16. Mr. Phonepaseuth PHONHDALA 16 2.3.5. Approximate Numeric 2.3.6. Exact Numeric ໃຊເກບຄາທເປນຕວເລກ້ ່ັ ີ ັ ົ່ ລວມເຖງທດນຍມິ ົ ິ ົ , ໂດຍມການກາໜດຈານວນຫກຂອງີ ໍ ົ ໍ ັຼ ຕວເລກທງໝດໄວກອນົ ັ ົ ້ ່ . ເຊງແບງອອກເປນິ ັ່ ່ 2 ປະເພດຄື: real ແລະ float real ໃຊຂະໜາດຂມູນໃນການຈດກບ້ ໍ ັ ັ້ 4 byte ສາລບຊວງຂອງຄາທຍອມຮບຄໍ ັ ີ ັ ື່ ່ ່ : -3.40E+308 ເຖງິ 3.40E+308 float ໃຊຂະໜາດຂມູນໃນການຈດກບ້ ໍ ັ ັ້ 8 byte ສາລບຊວງຂອງຄາທຍອມຮບຄໍ ັ ີ ັ ື່ ່ ່ : -1.79E+308 ເຖງິ 1.79E+308 ເປນປະເພດຂອງຂມູນທມການກາໜດຈານວນຫກຂອງຕວເລກພອມທງຕາແໜງັ ໍ ີ ີ ໍ ົ ໍ ັ ົ ັ ໍ້ ່ ຼ ້ ່ ຂອງທດນຍມໄວຢາວຊດເຈນົ ິ ົ ັ້ ່ . ໂດຍມການກາໜດຮູບແບບດງນີ ໍ ົ ັ ີ່ ້: decimal[(p[, s])] ແລະ numeric[(p[, s])] P ໝາຍເຖງຈານວນຫກຂອງຕວເລກທງໝດທຢູໃນຕາແໜງທາງດານຊາຍິ ໍ ັ ົ ັ ົ ີ ໍຼ ່ ່ ່ ້ ້ ຂອງຈຸດທດນຍມົ ິ ົ ແລະ 0< p <=38
  • 17. Mr. Phonepaseuth PHONHDALA 17 ຫາກບໄດມການກາໜດຄໍ ີ ໍ ົ່ ້ ່າ: p ( precision ) ຈະມຄາເປນີ ັ່ 18 s ( scale ) ຈະມຄາເປນີ ັ່ 0 s ໝາຍເຖງຈານວນຫກຂອງຕວເລກທງໝດທຢູໃນຕາແໜງທາງດານຂວິ ໍ ັ ົ ັ ົ ີ ໍຼ ່ ່ ່ ້ າ ຂອງຈຸດທດນຍມົ ິ ົ ແລະ 0<= s <=p ຕວຢາງົ ່ : ຖາກາໜດປະເພດຂອງຂມູນເປນ້ ໍ ົ ໍ ັ້ decimal(5,2) ສາມາດເກບຄັ ່າ 12.34 ຫຼື 123.45 ຖາປອນຄ້ ້ ່າ 12.345 ຫຼື 123.456 ຈະເກບຄາເປນັ ັ່ 12.34 ຫຼື 123.45 ແຕບສາມາດເກບຄ່ ່ໍ ັ່ າ 1234 ຫຼື 1234.56 ທບສາມາດເກບຄີ ໍ ັ່ ່ ່າ 1234 ຫຼື 1234.56 ກເພາະວໍ່ ່າ p=5 , s=2 ແລະ p-s=3 ນນໝາຍຄວາມວາຈານວນຖວນສາມາດເກບໄດັ ໍ ັ້ ່ ້ ້ 3 ຫກຼັ .
  • 18. Mr. Phonepaseuth PHONHDALA 18 ເປນປະເພດຂອງຂມູນທເກບຄາຂອງວນທັ ໍ ີ ັ ັ ີ້ ່ ່່ (Date) ຫຼື ເວລາ(Time) ຫທງສອງຼື ັ ຢາງລວມກນ່ ັ . 2.3.7. Date and Time ຈານວນຫກໍ ັຼ ຂະໜາດຂມູນໍ້ ( byte ) 1-9 5 10-19 9 20-28 13 29-38 17 ຕາຕະລາງທີ 2.4 ຄວາມສາພນລະຫວາງຈານວນຫກທໃຊໍ ັ ໍ ັ ີ່ ້ຼ ່ ແລະຂະໜາດຂອງຂມູນທຖກຈດເກບໍ ີ ື ັ ັ້ ່ ການໃສຄາຂມູນຂອງວນທສາມາດກາໜດໄດຫາຍລກສະນະດງຕວຢາງຕໄປ່ ່ ້ ່ໍ ັ ີ ໍ ົ ັ ັ ົ ໍ້ ່ ່ ່ຼ ນີ້: “Jun 15 2006” “15 Jun 2006” “2006 15 Jun” “15 Jun, 2006” “Jun 15 06” “15 Jun 06” “2006 June 15” “June 15, 2006”
  • 19. Mr. Phonepaseuth PHONHDALA 19 ຫສາມາດໃຊເຄອງໝາຍຂນຊວຍເຊນຼື ື ັ ັ້ ່່ ້ ່ : 6/15/06 (m/d/y) 6-15-06 (m-d-y) 6.15.06 (m.d.y) 6/01/15 (m/y/d) 06-6-15 (y-m-d) 15.06.6 (d.y.m) 15/06/06 (dd/mm/yy) 06-15-2006 (mm-dd-yyyy) ສວນລກສະນະຂອງເວລາກເຊນດຽວກນ່ ັ ໍ ັ ັ່ ່ ສາມາດກາໜດໄດດງນໍ ົ ັ ີ້ ່ ້: 8:30 8:30 PM 20:30 20:30:15:850 (20 ຊວໂມງົ່ 30 ນາທີ 15 ວນາທິ ີ 850 ມລລວນາທິ ິ ິ ີ) 20:30:15:8 (20 ຊວໂມງົ່ 30 ນາທີ 15 ວນາທິ ີ 8/10 ວນາທິ ີ) Date and Time ໄດແບງຂມູນອອກເປນ້ ່ ໍ ັ້ 2 ລກສະນະຄັ ື: datetime ແລະ smalldatetime ປະເພດ ຂະໜາດຂມູນໍ້ ( byte) ຈານວນຄາທງໝດໍ ັ ົ່ datetime 8 1/1/1753 – 12/31/9999 smalltime 4 1/1/1900 – 6/6/2079 ຕາຕະລາງທີ 2.5 ປະເພດຂອງຂມູນແບບໍ້ Date and Time
  • 20. Mr. Phonepaseuth PHONHDALA 20 ໃຊສາລບເກບປະເພດຂອງຂມູນທເປນຄາຂອງເງນ້ ່ໍ ັ ັ ໍ ີ ັ ິ້ ່ ໂດຍໃຊລກສະນະຂອງຕວ້ ັ ົ ເລກໃນການກາໜດຄໍ ົ ່າ ເຊງແບງອອກເປນິ ັ່ ່ 2 ລກສະນັ ະ ດງຕາຕະລາງທັ ີ່ 2.6 2.3.8. Money ປະເພດ ຂະໜາດຂມູນໍ້ ( byte) ຈານວນຄາທງໝດໍ ັ ົ່ ຄາທນາມາໃຊ່ ້ີ ໍ່ smallmoney 4 - 231 ເຖງິ 231 -1 - 263 ເຖງິ 263 -1 - 214,748,3648 ເຖງິ 214,748,3647 money 8 - 922,337,203,685,477,5808 ເຖງິ 922,337,203,685,477,5808 ຕາຕະລາງທີ 2.6 ປະເພດຂອງຂມູນແບບໍ້ Money 2.3.9. Unicode ໃຊຂະໜາດຂມູນເຖງ້ ໍ ິ້ 2 byte ຕການເກບອກຂະຣໍ ັ ັ່ ະ 1 ຕວົ ຈງເຮດໃຫມຈາິ ັ ີ ໍ່ ້ ນວນຂອງຕວອກຂະຣະທງໝດທ◌ສາມາດອາງອງໄດົ ັ ັ ົ ີ ີ່ ້ ້ ເຖງິ 216 = 65,536 ຄາ່ . ເໝາະສາລບເກບຂມູນທ◌ຕອງໃຊຫາຍພາສາຣວມກນໍ ັ ັ ໍ ີ ັ້ ່ ້ ້ ່ຼ ໂດຍແບງອອກເປນ່ ັ 3 ລກສະນັ ະ ດງຕໄປນັ ໍ ີ່ ່ ້:
  • 21. Mr. Phonepaseuth PHONHDALA 21 nchar(n) ມການເກບຂມູນຄາຍຄກນກບປະເພດຂມູນແບບີ ັ ໍ ື ັ ັ ໍ້ ້້ Char ໂດຍ n ມຄາຕງແຕີ ັ່ ່້ 1 - 4,000. ສວນຂະໜາດຂອງຂມູນທ◌ຕອງການເກບຈະເປນ່ ່ ້ໍ ີ ັ ັ້ n x 2 ເນອງຈາກໃຊື່ ້ 2 byte ໃນການເກບຄັ ່າ 1 ຕວອກຂະຣົ ັ ະ. Nvarchar(n) ຄກນກບື ັ ັ nchar ແຕມລກສະນະການເກບຂມູນຄາຍກນກບປ່ ້ີ ັ ັ ໍ ັ ັ້ ະ ເພດຂອງຂມູນແບບໍ້ varchar ຄື: ຈະເກບຂມູນສະເພາະທຮບມາຈງເທານນັ ໍ ີ ັ ິ ົ ັ້ ່ ່ ້ , ບມໍ ີ່ ການເກບຊອງຫວາງໃຫຄບຕາມຈານວນອກຂະລະທ◌ເຫອັ ົ ໍ ັ ີ ື່ ່ ້ ່ ຼ . ntext ເນອງຈາກື່ nchar ແລະ nvarchar ມຂຈາກດໃນການເກບຂີ ໍ ໍ ັ ັ ໍ້ ້ ມູນຢູພຽງ່ 4,000 ອກຂະລະເທານນັ ົ ັ່ ້ . ntext ຈງຖກນາມາໃຊວຽກໃນກລະນທ◌ຕອງິ ື ໍ ໍ ີ ີ່ ້ ່ ້ ການເກບຂມູນທມຂະໜາດໃຫຍັ ໍ ີ້ ່ ່. ໂດຍມລກສະນະການເກບຂມູນຄາຍກນກບປະເພດຂອງຂມູນແບບີ ັ ັ ໍ ັ ັ ໍ້ ້້ text ເຊງິ່ ເກບຂມູນໄດສູງສຸດເຖງັ ໍ ິ້ ້ 230 – 1 = 1,073,741,823 ຕວອກຂະຣົ ັ ະ.
  • 22. Mr. Phonepaseuth PHONHDALA 22 ມປະເພດຂມູນບາງສວນທ◌ບສາມາດຈດກຸມໄດີ ໍ ີ ໍ ັ້ ່່ ່ ່ ້ ຈງນາມາໄວລວມກນິ ໍ ັ່ ້ ດງມລາຍັ ີ່ ລະອຽດຕໄປນໍ ີ່ : 2.3.10. Special text ສາມາດເກບຂມູນໄດສູງເຖງັ ໍ ິ້ ້ 231 – 1 (2,147,483,647) ຫປຼື ະ ມານ 2 GB. ຂມູນປະເພດນບໄດຖກຈດເກບລວມຢູໃນຕາຕະລາງຄປະເພດຂອງຂມູນຊະໍ ີ ໍ ື ັ ັ ື ໍ້ ້ ່ ້້ ່ ນດິ ອນື່ ໆ ແຕຈະເກບເປນພອຍເຕ່ ັ ັ ີ( pointer ) ຂະໜາດ 16 byte ແທນ ໂດຍເຮດັ ໜາທຊຕໄປຫາຂມູນເຊງໄດຖກແບງອອກເປນແຕລະດາຕາເພຈ້ ້ ່ ່ີ ີ ໍ ໍ ິ ື ັ່ ້ ່ ້ ່ ( Data page ) ຂະໜາດ 8 KB bit ເປນການເກບຂມູນແບບບູລນັ ັ ໍ ີ້ ( Boolean ) ໂດຍຄາທເປນໄປໄດມ່ ້ີ ັ ີ່ ພຽງ 2 ຄາຄ່ ື: ຖກື ຫຼື ຜດິ . ເຊງອາດແທນຄາໄດເປນິ ັ່ ່ ້ True ຫື False, Yes ຫຼື No, On ຫຼື Off ເປນຕນັ ົ້ . ສາລບການເກບຂມູນຈງຂອງລະບບຈະເກບເປນຄາຕວເລກຄໍ ັ ັ ໍ ິ ົ ັ ັ ົ ື້ ່ : 0 ໝາຍເຖງຜດິ ິ (False) ແລະ 1 ໝາຍເຖງຖກິ ື (True)
  • 23. Mr. Phonepaseuth PHONHDALA 23 image ຄກນກບື ັ ັ text ແຕເປນການເກບຂມູນໄບນາຣ່ ັ ັ ໍ ີ້ ່ (Binary) ຂະໜາດ ໃຫຍເຊນ່ ັ່ : ໄຟລຮູບພາຍ໌ , ສຽງ ເປນຕນັ ົ້ . ຈະບເກບຂມູນທເປນຕວອກຂະຣະເຊນໍ ັ ໍ ີ ັ ົ ັ ັ່ ້ ່ ່ : ຂໍ້ ຄວາມຍາວໆ
  • 24. Mr. Phonepaseuth PHONHDALA 24 2.4. ການຕງຊອອບເຈກັ ື ັ້ ່ ( Object ) ໃນ SQL Server 2000 ກອນທຈະເຂາສູການນາປະເພດຂມູນໄປໃຊ່ ່ ້ີ ົ ໍ ໍ່ ້ ້ ເຮາຄວນເຂາໃຈເຖງການຕງຊຂອງົ ົ ິ ັ ື້ ້ ້ ຖນັ (Column), ຕາຕະລາງ ແລະອອບເຈກອນໆຂອງັ ື່ SQL Server ຕາມຂກາໍ ໍ້ ໜດດງຕໄປນົ ັ ໍ ີ່ ່ ້: 1. ຂະໜາດຂອງຄວາມຍາວສາມາດເປນໄປໄດຕງແຕັ ັ້ ່້ 1-128 Unicode Characters ເຊງລວມທງຕວອກສອນິ ັ ົ ັ່ , ສນຍາລກັ ັ ແລະຕວເລກົ . 2. ອກຂະລະຕວທາອດຕອງເປນຕວອກສອນັ ົ ໍ ິ ັ ົ ັ້ ຫອກຂະຣຼື ັ ະ 3 ຕວົ ຄື: @, #, _ 3. ສນຍາລກຕໄປນສາມາດໃຊຫງຈາກກາໜດອກຂະຣະຕວທາອດໄປແລວຄັ ັ ໍ ີ ັ ໍ ົ ັ ົ ໍ ິ ື່ ້ ້ ້ຼ : #, $ ແລະ _ 4. ສາລບສນຍາລກໍ ັ ັ ັ @ ຄວາມໝາຍໃນທາງລະບບຄົ ື: ໃຊເປນຕວປຽນຊະນດໂລ້ ່ັ ົ ິ ຄອລ Local Variable ແລະຈະສາມາດໃຊພຽງນາໜາເປນອກຂະຣະຕວທາອດ້ ້ໍ ັ ັ ົ ໍ ິ ເທານນົ ັ່ ້ .
  • 25. Mr. Phonepaseuth PHONHDALA 25 6. ສາມາດໃຊຊອງຫວາງ້ ່ ່ ( Space bar ) ໃນການຕງຊໄດັ ື້ ່ ້, ແຕໃນການອາງອງຊ່ ້ ີ ື່ ເຫານຈາເປນຕອງໄດມການກາໜດເຄອງໝາຍຄາເວຼົ່ ີ ໍ ັ ີ ໍ ົ ື ໍ ົ້ ່ ້້ ້ າ( Double Question Mark: “…” ) ຫວງຂຼື ົ ໍ( Square Bracket : […] ). 5. ສນຍາລກັ ັ # ໝາຍເຖງອອບເຈກທຖກສາງຂນມາເພອໃຊຊວຄາວິ ັ ີ ື ື ື ົ່ ້ ່ ່້ ້ ( Temporary Object ) ໃນລະຫວາງເຊສເຊນ່ ີ ( Session ) ໜງໆຂອງຜູໃຊຶ່ ້ ້ ເຊງສາມາດໃຊວຽກິ່ ້ ໄດພຽງພາຍໃນເຊສເຊນນເທານນ້ ີ ີ ົ ັ້ ່ ້ ຕວຢາງົ ່ : “SQL SERVER” ຫຼື [SQL SERVER] ເປນການອາງເຖງອອບເຈກທຊັ ິ ັ ີ ື້ ່ ່ SQL SERVER
  • 26. Mr. Phonepaseuth PHONHDALA 26 2.5.1. ການສາງາຕະລາງ້ 2.5. ການຈດການກບຕາຕະລາງດວຍັ ັ ້ Transact-SQL ມຮູບແບບຄາສງດງນີ ໍ ັ ັ ີ່ ່ ້: CREATE TABBLE [database.[owner.]table_name ( Column_name datatype [ identity | constraint | Null | NOT NULL] | column_name AS computed_column_expression […] ) [ON { filegroup | DEFAULT}]
  • 27. Mr. Phonepaseuth PHONHDALA 27 ຕວຢາງົ ່ : ການສາງຕາຕະລາງ້ ຮູບທີ 2.12 ການສາງຕາຕະລາງດວຍຄາສງ້ ້ ໍ ັ່ Transact-SQL
  • 28. Mr. Phonepaseuth PHONHDALA 28 2.5.2. ການແກໄຂຕາຕະລາງ້ ມຮູບແບບຄາສງດງນີ ໍ ັ ັ ີ່ ່ ້: ALTER TABBLE table_name { [ ALTER COLUMN column_name { new_data_type [ ( precision [ , scale ] ) ] [ COLLATE < collation_name > ] [ NULL |NOT NULL ] | { ADD | DROP } REWGUIDCOL } ] | ADD { [ < column_definition > ] | column_name AS computed_column_expression } [ ,…n ] | DROP { [ CONSTRAINT ] constaint_name | COLUMN column } [ ,…n ] }
  • 29. Mr. Phonepaseuth PHONHDALA 29 ຕວຢາງົ ່ : ການເພມຖນໃໝໃຫກບຕາຕະລາງີ ັ ັ່ ່ ້ ການກາໜດໍ ົ NULL ຈະເຮດໃຫຣຄອດັ ີ້ ( record ) ທມຢູແລວເກບຄີ ີ ັ່ ່ ້ ່າ ບຮູຄໍ່ ້ ່າ ໃຫກບຖນໃໝນ້ ່ັ ັ ີ້. ສວນການກາໜດ່ ໍ ົ DEFAULT ຈະເຮດໃຫພຽງຣຄອດໃໝທຖກເພມເຂາມາຫງັ ີ ີ ື ີ ົ ັ້ ່ ່ ່ ້ ຼ ຈາກທໄດເພມຖນໃໝນໄປແລວເທານນີ ີ ັ ີ ົ ັ່ ່ ້ ່ ້້ ່ ້ . ຮູບທີ 2.13 ການເພມຖນໃຫກບຕາຕະລາງີ ັ ັ່ ້
  • 30. Mr. Phonepaseuth PHONHDALA 30 ຕວຢາງົ ່ : ການປຽນປະເພດຂມູນທໃຊເກບ່ ້ໍ ີ ັ້ ່ ຮູບທີ 2.14 ການປຽນປະເພດຂອງຂມູນ່ ໍ້ ຕວຢາງົ ່ : ການລບຖນອອກຈາກຕາຕະລາງຶ ັ ຮູບທີ 2.15 ການລບຖນອອກຈາກຕາຕະລາງຶ ັ
  • 31. Mr. Phonepaseuth PHONHDALA 31 2.5.3. ການປຽນຊຕາຕະລາງ່ ື່ ມຮູບແບບຄາສງດງນີ ໍ ັ ັ ີ່ ່ ້: sp_rename [ @objname = ] ‘object_name’, [ @newname = ] ‘new_name’ [ , [ @objtype = ] ‘object_type’ ] ຕວຢາງົ ່ : ການປຽນຊຈາກຕາຕະລາງ່ ື່ tb_employees ເປນັ employees ຮູບທີ 2.16 ການປຽນຊຕາຕະລາງ່ ື່
  • 32. Mr. Phonepaseuth PHONHDALA 32 ຕວຢາງົ ່ : ການປຽນຊຖນ່ ື ັ່ ຈາກ FirstName ເປນັ Name ຮູບທີ 2.17 ການປຽນຊຖນ່ ື ັ່ ( Column ) 2.5.4. ການລບຕາຕະລາງຶ ມຮູບແບບຄາສງດງນີ ໍ ັ ັ ີ່ ່ ້: DROP TABLE table_name
  • 33. Mr. Phonepaseuth PHONHDALA 33 ຕວຢາງົ ່ : ການລບຕາຕະລາງທຊຶ ີ ື່ ່ employees ຮູບທີ 2.18 ການລບຕາຕະລາງຶ 2.5.5. Computed Column ຮູບທີ 2.19 ການສາງຕາຕະລາງທມ້ ີ ີ່ Computed Column
  • 34. Mr. Phonepaseuth PHONHDALA 34 2.6.1. ການສາງາຕະລາງ້ 2.6. ການຈດການກບຕາຕະລາງດວຍັ ັ ້ Enterprise Manager ມຂນຕອນດງນີ ັ ັ ີ້ ່ ້: 1. ເປດີ Enterprise Manager ຂນມື້ າ 2. ເຂາໄປຫາອອບເຈກົ ັ້ Table ເຊງຢູພາຍໃນຖານຂມູນທຕອງການິ ໍ ີ່ ້ ່່ ້ 3. ກດເມາສຂວາໃສອອກເຈກົ ົ ັ໌ ່ Table ແລວເລອກລາຍການ້ ື New Table… ຫຼື ເລອກເມນູື Action > New Table ຈະໄດດງຮູບທ້ ັ ີ່ 2.20 Column Name ເປນບອນກາໜດຊຖນັ ໍ ົ ື ັ່ ້ Data Type ເປນບອນກາໜດປະເພດຂມູນັ ໍ ົ ໍ່ ້ Length ເປນບອນກາໜດຂະໜາດຂອງປະເພດຂມູນັ ໍ ົ ໍ່ ້ Allow Nulls ເປນບອນກາໜດການຍອມຮບຄາບຮູັ ໍ ົ ັ ໍ່ ່ ້່
  • 35. Mr. Phonepaseuth PHONHDALA 35 ເຮາຍງສາມາດກາໜດລາຍລະອຽດເພມເຕມໃຫກບແຕລະຖນຂມູນົ ັ ໍ ົ ີ ີ ັ ັ ໍ່ ້້ ່ ເຊງມລາຍລິ ີ່ ະ ອຽດດງນັ ີ່ ້: ຮູບທີ 2.20 ກາໜດໂຄງສາງຂອງຕາຕະລາງໍ ົ ້
  • 36. Mr. Phonepaseuth PHONHDALA 36 Description ກາໜດຄາອະທບາຍໃຫກບຖນຂມູນໍ ົ ໍ ິ ັ ັ ໍ້ ້ Default Value ກາໜດຄາດຟອລຕໍ ົ ີ່ ໌ ຖກໃຊເມອການສາງຣຄອດື ື ີ້ ້່ ( Record ) ໃໝບໄດກາໜດຂມູນໃຫກບຖນນ່ ້ ້ໍ ໍ ົ ໍ ັ ັ ີ່ ້ ້ Precision and Scale ກາໜດຈານວນຖວນໍ ົ ໍ ້ ແລະຈານວນເສດໍ ສາລບຂມູນໍ ັ ໍ້ ທເປນຕວເລກີ ັ ົ່ Identity ມຄວາມໝາຍຄກບຟລດີ ື ັ ິ ໌ (Field) AutoNumber ໃນ MS Access Is RowGuid ສາລບກາໜດໃຫປະເພດຂອງຟລດຂມູນເປນແບບໍ ັ ໍ ົ ິ ໍ ັ້ ໌ ້ uniqueidentifier Formula ເປນບອນກາໜດສູດເພອຄດໄລຫາຜນໄດຮບກອນັ ໍ ົ ື ິ ົ ັ່ ່ ້ ່່ ແລວຈງຄອຍຈດ້ ່ິ ັ່ ເກບລງຟລດນັ ົ ິ ີ໌ ້ Collation ເປນການກາໜດັ ໍ ົ Collection ໃຫກບຟລດນ້ ໌ັ ິ ີ້ ໂດຍການກດປຸມົ ່
  • 37. Mr. Phonepaseuth PHONHDALA 37 4. ຫງຈາກກາໜດຂມູນສາເລດແລວຼັ ໍ ົ ໍ ໍ ັ້ ້ ເຮາສາມາດກາໜດຄຫກົ ໍ ົ ີ ັຼ ( Primary Key ) ໃຫ້ ກບຕາຕະລາງໄດັ ້ ໂດຍການກດເມາສໃສຟລດທຕອງການົ ົ ິ ີ໌ ່ ໌ ້່ ຈາກນນຈງກດປຸມັ ິ ົ້ ່ ່ ຮູບທີ 2.21 ໄດອະລອກບອກເພອຕງຊຕາຕະລາງັ ັ ື ັ ື່ ້ ່ 5. ກດປຸມົ ່ ຈະມໄດອະລອກບອກີ ັ ັ ( Dialog box ) ໃຫຕງຊຕາຕະລາງປະກດຂນ້ ັ ື ົ ື້ ່ ້ ດງຮູບທັ ີ່ 2.21 ຫງຈາກຕງຊຕາຕະລາງຮຽບຮອຍແລວກດປຸມຼັ ັ ື ົ້ ່ ້ ້ ່ 2.6.2. ການປຽນຊຕາຕະລາງ່ ື່ ມຂນຕອນດງນີ ັ ັ ີ້ ່ ້: 1. ກດເມາສຂວາໃສຊຂອງຕາຕະລາງທຕອງການົ ົ ື ີ໌ ່ ້່ ່ ແລວເລອກລາຍການ້ ື Rename
  • 38. Mr. Phonepaseuth PHONHDALA 38 2. ປຽນຊໃໝຕາມຕອງການ່ ່ ້ື່ ແລວກດແປນ້ ້ົ Enter ຮູບທີ 2.22 ຂຄວາມຢນຢນການປຽນຊຕາຕະລາງໍ ື ັ ື້ ່່ ກດປຸມົ ່ ເພອກວດສອບຜນກະທບກບອອບເຈກອນື ົ ົ ັ ັ ື່ ່ ໆ ທອາດີ່ ຈະມຄວາມສາພນກບຕາຕະລາງທຕອງການປຽນຊນກອນໄດີ ໍ ັ ັ ີ ື ີ່ ້ ້້ ່ ່ ້ 2. ກດປຸມົ ່ ເພອປຽນຊຕາຕະລາງື ື່ ່່ 3. ກດປຸມົ ່ OK
  • 39. Mr. Phonepaseuth PHONHDALA 39 2.6.3. ການລບຕາຕະລາງຶ ມຂນຕອນດງນີ ັ ັ ີ້ ່ ້: 1. ກດເມາສຂວາໃສຊຂອງຕາຕະລາງທຕອງການົ ົ ື ີ໌ ່ ້່ ່ ແລວເລອກລາຍການ້ ື Delete 2. ກດົ ຮູບທີ 2.23 ໜາຈສະແດງຕາຕະລາງທຈະຖກລບ້ ໍ ີ ື ຶ່ ===== =====