วันศุกร์ที่ 4 มกราคม พ.ศ. 2556

MySQL Data Type คืออะไร ???

สวัสดีครับทุกท่านที่แวะมาเยี่ยมชม

วันนี้เรามาเรียนรู้เรื่อง MySQL Data Type กันว่ามีอะไรบ้างและแต่ละอย่างแตกต่างกันอย่างไร เพื่อที่จะได้เลือก Data Type [ชนิดของข้อมูล] ได้อย่างถูกต้องและเหมาะสมเวลาที่เราทำการออกแบบฐานข้อมูลครับ

บทความชิ้นนี้เขียนขึ้นมาเพราะต้องทำการบ้านส่งอาจารย์ครับ 555+ ก็เลยรวบรวมเอาข้อมูลจากหลาย ๆ เว็บมาปรับปรุงขึ้นใหม่  พร้อมแล้วเราไปดูกันเลยครับว่า Data Type ใน MySQL นั้นมีอะไรบ้าง

Data Type ใน MySQL เราแบ่งหลักๆได้เป็น 3 ประเภท คือ

  1. Numeric เอาไว้จัดเก็บตัวเลข
  2. Date and Time เอาไว้จัดเก็บ วัน , เวลา
  3. String เอาไว้จัดเก็บ ตัวหนังสือ ตัวอักษรต่างๆ

ประเภท Numeric มีดังนี้

Type

คำอธิบาย

ขนาดพื้นที่
ที่ใช้เก็บ

TINYINT(M) สำหรับเก็บข้อมูลชนิดตัวเลข จำนวนเต็มไม่มีทศนิยม
signed คือ  -128 ถึง 127
unsigned คือ 0 ถึง 255
1 bytes
SMALLINT(M) สำหรับเก็บข้อมูลชนิดตัวเลข จำนวนเต็มไม่มีทศนิยม
signed คือ -32768 ถึง 32767
unsigned คือ 0 ถึง 65535
2 bytes
MEDIUMINT(M) สำหรับเก็บข้อมูลชนิดตัวเลข จำนวนเต็มไม่มีทศนิยม
signed คือ -8388608 ถึง 8388607
unsigned คือ 0 ถึง 16777215
3 bytes
INT(M) สำหรับเก็บข้อมูลชนิดตัวเลข จำนวนเต็มไม่มีทศนิยม
signed คือ -2147483648 ถึง 2147483647
unsigned คือ 0 ถึง 4294967295
4 bytes
BIGINT(M) สำหรับเก็บข้อมูลชนิดตัวเลข จำนวนเต็มไม่มีทศนิยม
signed คือ -9223372036854775808 ถึง 9223372036854775807
unsigned คือ 0 ถึง 18446744073709551615
8 bytes
FLOAT(M,D) สำหรับเก็บข้อมูลชนิดตัวเลขมีทศนิยม
signed คือ -3.402823466E+38 ถึง -1.175494351E-38, 0
unsigned คือ 1.175494351E-38 ถึง 3.402823466E+38
4 bytes
DOUBLE(M,D) สำหรับเก็บข้อมูลชนิดตัวเลขมีทศนิยม
signed คือ -1.7976931348623157E+308 ถึง -2.2250738585072014E-308, 0
unsigned คือ 2.2250738585072014E-308 ถึง 1.7976931348623157E+308
8 bytes
DECIMAL(M,D) เปลี่ยนแปลงได้ ขึ้นอยู่กับความยาวของตัวเลข (M) ค่าที่ระบุจำนวนตัวเลขที่ต้องการเก็บ เช่น (M) คือ 30 ก็เก็บเลขได้ 30 หลัก (ตั้งแต่ MySQL 5.0.3) สูงสุดที่ 30 หลัก (M+7)/8
BIT (M) ใส่ค่า bit ใส่ได้ ตั้งแต่ 1 ถึง 64 (ตั้งแต่ MySQL 5.0.3)  

สำหรับค่าตัวเลขสามารถกำหนดความยาวของตัวเลขและจำนวนหลังจุดทศนิยมได้ ขึ้นอยู่กับเป็นข้อมูลชนิดใด ในที่นี้จะแทนด้วยตัว

M คือ ค่าความยาวของตัวเลขรวมจุดทศนิยม
D คือ จำนวนตัวเลขหลังจุดทศนิยม

  • unsigned คือ ไม่ติดลบ หรือไม่มีเครื่องหมาย
  • unsigned zerofill คือ ไม่ติดลบ แต่ว่าหากข้อมูลที่กรอกเข้ามาไม่ครบตามจำนวน หลักที่เรากำหนด ตัว MySQL จะทำการเติม 0 ให้ครบหลักเอง เช่น ถ้ากำหนดให้ใส่ได้ 3 หลัก แล้วทำการเก็บข้อมูล 25 เข้าไป เวลาที่สืบค้นดู เราจะได้ค่าออกมาเป็น 025
  • signed คือ ค่าติดลบ หรือมีเครื่องหมาย

ปกติที่เราสร้าง field จะถูกกำหนดเป็น signed โดยอัตโนมัติครับ

ประเภท Date and Time มีดังนี้

Type

คำอธิบาย

ขนาดพื้นที่
ที่ใช้เก็บ

DATE สำหรับเก็บข้อมูลประเภทวันที่ โดยเก็บได้จาก 1 มกราคม ค.ศ. 1000 ถึง 31 ธันวาคม ค.ศ. 9999 โดยจะแสดงผลในรูปแบบ YYYY-MM-DD 3 bytes
TIME สำหรับเก็บข้อมูลประเภทเวลา มีค่าได้ตั้งแต่ -838:59:59 ไปจนถึง 838:59:59 โดยจะแสดงผล ออกมาในรูปแบบ HH:MM:SS 3 bytes
DATETIME

สำหรับเก็บข้อมูลประเภทวันที่ และเวลา โดยจะเก็บได้ตั้งแต่ 1 มกราคม ค.ศ. 1000 เวลา 00:00:00 ไปจนถึง 31 ธันวาคม ค.ศ. 9999 เวลา 23:59:59 โดยรูปแบบการแสดงผล เวลาที่ทำการสืบค้น (query) ออกมา จะเป็น YYYY-MM-DD HH:MM:SS

8 bytes
TIMESTAMP[(M)] สำหรับเก็บข้อมูลประเภทวันที่ และเวลาเช่นกัน แต่จะเก็บในรูปแบบของ YYYYMMDDHHMMSS หรือ YMMDDHHMMSS หรือ YYYYMMDD หรือ YYMMDD แล้วแต่ ว่าจะระบุค่า M เป็น 14, 12, 8 หรือ 6 ตามลำดับ สามารถเก็บได้ตั้งแต่วันที่ 1 มกราคม ค.ศ. 1000 ไป จนถึงประมาณปี ค.ศ. 2037 4 bytes
YEAR[(2|4)] สำหรับเก็บข้อมูลประเภทปี ในรูปแบบ YYYY หรือ YY แล้วแต่ว่าจะเลือกโดยหากเลือกเป็น 4 หลัก จะเก็บค่าได้ตั้งแต่ ค.ศ. 1901 ถึง 2155 แต่ หากเป็น 2 หลัก จะเก็บตั้งแต่ ค.ศ. 1970 ถึง 2069 1 bytes

ประเภท String  มีดังนี้

Type

คำอธิบาย

ขนาดพื้นที่
ที่ใช้เก็บ

CHAR(M) สำหรับเก็บข้อมูลประเภทตัวอักษร ขนาดตามค่า M แต่ไม่เกิน 255 ตัวอักษร M bytes
VARCHAR(M) สำหรับเก็บข้อมูลประเภทตัวอักษร ทุกครั้งที่เลือกชนิดของฟิลด์เป็นประเภทนี้ จะต้องมี การกำหนดความยาวของข้อมูลลงไปด้วย ซึ่งสามารถกำหนดค่าได้ตั้งแต่ 1 - 255 ฟิลด์ชนิดนี้ เหมาะ สำหรับการเก็บข้อมูลสั้นๆ เช่น ชื่อ นามสกุล (ตั้งแต่ MySQL เวอร์ชั่น 5.0.3 ขึ้นไปสามารถเก็บได้ 0 – 65,535 ตัวอักษร) L+1 / L+2 bytes
TINYTEXT เป็น case-insensitive สามารถเก็บข้อมูล ได้ 255 ตัวอักษร L+1 bytes
TINYBLOB เป็น case-sensitive สำหรับการเรียงและเปรียบเทียบ สามารถเก็บข้อมูล ได้ 255 ตัวอักษร L+1 bytes
TEXT เป็น case-insensitive สำหรับเก็บข้อมูลประเภทตัวอักษร เช่นเดียวกับ TINYTEXT แต่สามารถเก็บได้มากขึ้น โดย สูงสุดคือ 65,535 ตัวอักษร เหมาะสำหรับเก็บข้อมูลพวกเนื้อหาต่างๆ ที่ยาวๆ L+2 bytes
BLOB เป็น case-sensitive สำหรับการเรียงและเปรียบเทียบ สามารถเก็บข้อมูล ได้สูงสุดคือ 65,535 ตัวอักษร L+2 bytes
MEDIUMTEXT เป็น case-insensitive เก็บข้อมูลประเภทตัวอักษร เช่นเดียวกับ TINYTEXT แต่เก็บข้อมูลได้ 16,777,215 ตัวอักษร L+3 bytes
MEDIUMBLOB เป็น case-sensitive เก็บข้อมูลประเภทตัวอักษร เช่นเดียวกับ TINYTEXT แต่เก็บข้อมูลได้ 16,777,215 ตัวอักษร L+3 bytes
LONGTEXT เป็น case-insensitive เก็บข้อมูลประเภทตัวอักษร เช่นเดียวกับ TINYTEXT แต่เก็บข้อมูลได้ 4,294,967,295 ตัวอักษร L+4 bytes
LONGBLOB เป็น case-sensitive เก็บข้อมูลประเภทตัวอักษร เช่นเดียวกับ TINYTEXT แต่เก็บข้อมูลได้ 4,294,967,295 ตัวอักษร L+4 bytes
ENUM(‘value1’,’value2’,…) เป็นการเก็บข้อมูลสตริงเข้าไว้เป็นรายการไว้ก่อน โดยค่าแรกถูกแทนด้วยค่า 1 หากรายการไม่ตรงกับรายการใดเลย จะแทนด้วยค่า 0 หรือจะใส่เป็นค่าตรงๆเลยก็ได้ ข้อมูลชนิดนี้จะช่วยลดพื้นที่การจัดเก็บได้อย่างมาก เหมาะกับการเลือกแบบลิสต์บ็อกซ์ เพราะเลือกได้เพียง 1 ตัวเลือกเท่านั้น ENUM เก็บค่ารายการได้สูงถึง 65535 ตัวเลือก 1 – 2 bytes
SET(‘value1’,’value2’,…) คล้ายกับ ENUM แต่เลือกรายการได้มากกว่าหนึ่งตัวเลือก จะใช้เลขฐานสองเก็บค่าตัวเลือก โดยรายการแรกมีค่า 1, 2, 4, 8, 16, 32,... ไปเรื่อยๆ ถ้าเลือกรายการไหนก็เอามาบวกกันจะได้ค่าที่จะเก็บบันทึก เหมาะกับการเลือกแบบเช็คบ็อกซ์ เพื่อให้ผู้ตอบเลือกได้มากกว่า 1 ตัวเลือก SET เก็บค่ารายการได้เพียง 64 ตัวเลือก 8 bytes
BOOL เหมือนกับ TINYINT แต่เก็บค่าเป็น 0 กับ 1 ซึ่ง 0 คือ เท็จ 1 คือ จริง  
BINARY(M) เหมือนกับชนิด CHAR แต่เก็บเป็นแบบ case-insensitive M bytes
VARBINARY(M) เหมือนกับชนิด VARCHAR แต่เก็บเป็นแบบ case-insensitive L+1 / L+2 bytes

L คือ ตัวอักษรที่ใช้จริง

  • case-sensitive คือ ตัวอักษรตัวพิมพ์ใหญ่และตัวพิมพ์เล็กมีความหมายแตกต่างกัน
  • case-insensitive คือ ไม่คำนึงถึงตัวอักษรตัวพิมพ์ใหญ่หรือพิมพ์เล็ก


แหล่งอ้างอิง

วันศุกร์ที่ 28 ธันวาคม พ.ศ. 2555

10 สุดยอดโปรแกรม AntiVirus ปี 2012

สวัสดีวันศุกร์สุดท้ายของปี 2012 ครับ โลกเรายังอยู่ต่อไป และชีวิตก็ต้องดำเนินต่อไป วันนี้มาดู 10 สุดยอดโปรแกรม AntiVirus ประจำปี 2012 กันเลยดีกว่าครับ


ขณะที่เขียนบทความนี้ก็ใกล้สิ้นปีจะขึ้นปีใหม่เต็มทีแล้ว ผมก็ขอนำเสนอเรื่องเกี่ยวกับโปรแกรมป้องกันไวรัสหรือที่เรียกว่าแอนตี้ไวรัสในภาษาอังกฤษว่าในปี 2012 ที่มีการทำนายว่าโลกจะแตกเนี่ย คนที่ใช้คอมพิวเตอร์ที่เป็นวินโดวส์เขานิยมใช้โปรแกรมตัวไหนบ้าง

 
ในที่นี่ผมจะรวบรวมมา 10 โปรแกรม โดยอ้างอิงมาจากเว็บต่างประเทศชื่อ ivancheam.com ซึ่งผมเห็นว่า 10 โปรแกรมที่เขากล่าวว่ามีคนใช้มาและดีที่สุดในปี 2012 นั้นเป็นโปรแกรมที่คนไทยที่ใช้คอมพิวเตอร์ส่วนใหญ่รู้จักกันทุกคน
ทั้งนี้ในบทความนี้จะเห็นว่าไม่มีโปรแกรม Symantec Antivirus อยู่ในรายการ ต้องบอกก่อนนะครับว่าไม่ใช่ไม่ดี แต่ในความจริงคุณๆ ส่วนใหญ่ที่เคยใช้โปรแกรมตัวนี้จะทราบดีว่า มันกินทรัพยากรมาก ทำให้หน่วงเครื่องมาก โดยเฉพาะคอมพิวเตอร์ที่มีสเปค CPU มีความเร็วต่ำกว่า 2.4 Ghz และมี RAM แค่ 1GB การใช้งานแบบ  Multitasking จะเป็นเรื่องที่น่าเบื่อมาก ตัวอย่างเช่น ถ้าคุณเปิดใช้งานเวิร์ดหน้าไฟล์หรือเปิดเบราว์เซอร์หลายๆ เพจ ในบทความนี้จะรวบรวมโปรแกรมป้องกันไวรัสที่ไม่หน่วงเครื่องกินทรัพยากร RAM น้อย CPU ทำงานได้ดีโหลดโปรแกรมได้เร็วขึ้น
มาพบกับโปรแกรมป้องกันไวรัสที่ดีที่สุดประจำปี 2012 กัน

1.Bitdefender Antivirus Plus
 
Bitdefender Antivirus Plus โปรแกรมป้องกันไวรัสที่ยังครองใจคนในโลกอินเตอร์เน็ตให้เป็นที่หนึ่งถึงจะมีคนส่วนมากบอกว่ากินทรัพยากรเครื่องแบบเอาเรื่องเหมือนกัน แต่เหมือนแทบกับผลงานในการทำงานอย่างมีประสิทธิภาพในการรักษาความปลอดภัยในเครื่องในเรื่องป้องกันไวรัสที่ดีที่สุดที่ในการสแกนเว็บ, IM, และอีเมลสามารถป้องกัน มัลแวร์, ไวรัส, สปายแวร์ และฟิชชิ่งที่หลอกลวงในโลกของ Social Networking และสำหรับเวอร์ชัน 2012 ก็ได้ตัด Pop up เตือนต่างๆที่คิดว่ามากเกินออกไปและการตั้งค่าที่ทำงานได้ง่ายขึ้น
เว็บไซต์ – http://www.bitdefender.com/

2.Kaspersky Anti-virus 2012
 

Kaspersky Anti-virus โปรแกรมจากรัสเซียที่เป็นโปรแกรมขวัญใจคนไทยอยู่เสมอสำหรับเวอร์ชัน 2012 ได้ปรับให้ลดการกินทรัพยากรเครื่องลงไปบาง แต่เรื่องของการป้องกันแบบ Real-time ยังพัฒนาต่อเนื่อง โดยเฉพาะผู้ที่ชอบช็อปปิ้งแบบออนไลน์ Kaspersky ได้จัดระบบความปลอดภัยในการซื้อขายให้โดยเฉพาะ ทั้งยังสแกนได้เร็วขึ้นกว่าเดิมมาก
เว็บไซต์ – http://www.kaspersky.com/anti-virus

3. Panda Antivirus Pro 2012
 
Panda Antivirus Pro เป็นหนึ่งในโปรแกรมป้องกันไวรัสที่ดีที่สุดในปี 2012 จากที่เมื่อปี 2011 ไม่ติดอันดับหนึ่งในสิบ แต่มาปีนี้โปรแกรมป้องกันไวรัสจากเยอรมันนีเจ้านี้ มีจุดเด่นในเรื่องการพัฒนาการป้องกันไวรัสในระบบ Cloud Computing และป้องกันภัยคุกคามที่ไม่รู้จักที่มาในรูปแบบไฟล์สคริปต์ที่เป็นอันตราย การกินทรัพยากรเครื่องต่ำ เน้นการดูแลด้านการใช้งานอินเตอร์เน็ต

4. F-Secure Anti-virus 2012
 
F-Secure Anti-virus 2012 โปรแกรมน้องใหม่จาก Finland  ที่มาแรงในปี 2012  ด้วยการสแกนไวรัสด้วยความรวดเร็ว น่าตาการใช้งานที่เข้าใจง่าย กินทรัพยากรเครื่องน้อย

5. Avast! Pro Antivirus 2012
 
Clean your PC before Windows even starts สโลแกนที่โปรแกรมป้องกันเจ้านี้นำมาใช้และก็ทำได้ดังที่คุยไว้ด้วย   Avast! Pro Antivirus มีการสแกนหาภัยคุกคามตั้งแต่ยังไม่ทำงานด้วยสแกนตั้งแต่เริ่มบูตระบบวินโดวส์ ทั้งยังมีระบบ SafeZone ที่คอยป้องกันอันตรายที่มากับอินเตอร์เน็ต  Avast Pro มีการป้องกันเรียลไทม์ที่จะสแกนหากิจกรรมที่น่าสงสัยภัยคุกคามความปลอดภัยผ่านเครือข่าย, IM, Mail, P2P และเว็บ
เว็บไซต์ – http://www.avast.com/pro-antivirus

6. G Data AntiVirus 2012
 

โปรแกรมป้องกันไวรัสจากเยอรมันนีอีกราย มีเว็บไซต์ให้คนไทยโดยเฉพาะพร้อมทั้งมี Forum ที่ให้คำแนะนำสนับสนุนภาษาไทยเต็มรูปแบบ  มีการป้องกันไวรัสที่ดีโดยการสแกนแบบ DoubleScan  ทั้งยังมีการสแกนที่ไม่ซ้ำซ้อนคือว่าถ้ามันสแกนไปแล้ว มันจะจำไว้จะไม่สแกนอีกต่อเมื่อไฟล์นั้นๆไม่ได้ย้ายไปจากที่มันสแกนไปครั้งแรกหรือมีการเปลี่ยนแปลงในไฟล์ 
เว็บไซต์ : http://www.gdata.sabs.co.th/

7. BullGuard Antivirus 2012
 
โปรแกรมป้องกันไวรัสน้องใหม่ แต่มาแรงไม่น้อยเพราะความสามารถเหนือโปรแกรมประเภทเดียวกันที่เกิดมานานแล้วไม่น้อย ที่ดูเด่นคือโปรแกรมออกแบบให้ใช้งานง่าย มีเมนูที่ดูแล้วเข้าใจง่ายผู้ใช้ไม่สับสน และระบบป้องกัน Spammail ที่รองรับกับทุกๆ mail-client
เว็บไซต์ – http://www.bullguard.com/

8. AVG Anti-Virus 2012
 
รู้จักกันดีในหมู่คนไทยเป็นโปรแกรมป้องกันไวรัสที่ดีมากในแบบ Freeware แต่สำหรับตัวนี้เป็นแบบเสียเงิน เด่นในเรื่องของการตรวจสอบ web และ link ต่างๆ ทั้งยังกินทรัพยากรน้อยไม่หน่วงเครื่อง
เว็บไซต์ – http://www.avg.com/ww-en/homepage

9. Avira AntiVir Premium 2012
 
โปรแกรมป้องกันไวรัสที่เรียกกันชอบเรียกกันว่า ร่มแดง หน้าจอการใช้งานที่ง่าย ไม่กินทรัพยากรเครื่องมีการอัพเดทไวรัสอย่างสม่ำเสมอ ไม่เพียงแค่ไวรัสเท่านั้น แต่ยังสามารถป้องกันไฟล์ต่าง ๆ ที่ต้องสงสัยเช่น พวกสปายแวร์ มัลแวร์ Adware ต่าง ๆ มีการตั้งค่าความปลอดภัยเพื่อป้องกันระบบอย่างดีเยี่ยม ด้วยเทคโนโลยีวิเคราะห์ขั้นสูง Heuristic ซึ่งเป็นการวิเคราะห์และตรวจสอบพฤติกรรมที่น่าสงสัย
เว็บไซต์ – http://www.avira.com/en/index

10. ESET NOD32 Antivirus 2012
 
ESET NOD32 Antivirus โปรแกรมสแกนไวรัสและกำจัดไวรัส ที่ได้รับความนิยมมากที่สุด จุดเด่นอยู่ที่ตัวโปรแกรมมีขนาดเล็กสามารถป้องกันไวรัสเวิร์ม, โทรจัน, สปายแวร์แอดแวร์, ฟิชชิ่งและแฮกเกอร์  ได้อย่างรวดเร็วและมีประสิทธิภาพ ใช้งานง่ายไม่ซับซ้อน อัพเดตได้รวดเร็วเพราะไฟล์มีขนาดเล็ก ที่สำคัญตรวจสอบไวรัสได้อย่างรวดเร็ว กินทรัพยากรระบบน้อย สามารถที่จะรักษาความปลอดภัยคอมพิวเตอร์ขณะที่ทำงานแบบออนไลน์ ดาวน์โหลดไฟล์และเล่นเกมออนไลน์หรือการแลกเปลี่ยนข้อมูลผ่านทางอินเทอร์เน็ต




วันพุธที่ 21 พฤศจิกายน พ.ศ. 2555

วิธีติดตั้ง Windows 8 แบบ Clean Install

สวัสดีครับช่วงนี้งานซ่อมเยอะมากครับไม่ค่อยมีเวลามา update เลย แต่วันนี้มีบทความดี ๆ มาให้ศึกษากันครับ ทันยุคทันสมัยกับ Windows 8

มาเรียนรู้วิธีการติดตั้ง Windows 8 ด้วยตัวเองกันครับ ตามบทความที่นำมาให้อ่านจะเห็นว่าไม่ยากเกินความสามารถของทุกท่านเลยครับ

วิธีติดตั้ง Windows 8 แบบ Clean Install

ขอบคุณบทความดี ๆ จาก sanook.com และ notebookspec.com ครับ