วันอาทิตย์ที่ 3 พฤศจิกายน พ.ศ. 2556

ชนิดของตัวเเปร MySQL

นิดของตัวแปร

วันนี้ว่างๆ เลยไปลองหาข้อมูลเกี่ยวกับชนิดตัวแปรมาดูเล่นๆ ก็มีเนื้อหาประมาณนี้ครับ

VARCHAR (ย่อมาจาก Variable Character Field อ่านว่า วาร์คาร์ หรือ วาร์ชาร์) หมายถึงกลุ่มข้อมูลตัวอักขระที่ไม่สามารถระบุความยาวได้ คำนี้มักใช้เป็นชนิดข้อมูลในระบบจัดการฐานข้อมูล ชนิดข้อมูลประเภท varchar สามารถเก็บข้อมูลตัวอักขระขนาดเท่าใดก็ได้ที่ไม่เกินความยาวที่จำกัดไว้ การจำกัดความยาวก็แตกต่างกันออกไปในแต่ละฐานข้อมูล

TINYINT : สำหรับเก็บข้อมูลชนิดตัวเลขที่มีขนาด 8 บิต ข้อมูลประเภทนี้เราสามารถกำหนดเพิ่มเติมในส่วนของ "แอตทริบิวต์" ได้ว่าจะเลือกเป็น

TEXT : สำหรับเก็บข้อมูลประเภทตัวอักษร เช่นเดียวกับ TINYTEXT แต่สามารถเก็บได้มากขึ้น โดยสูงสุดคือ 65,535 ตัวอักษร หรือ 64KB เหมาะสำหรับเก็บข้อมูลพวกเนื้อหาต่างๆ ที่ยาวๆ

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

SMALLINT : สำหรับเก็บข้อมูลประเภทตัวเลขที่มีขนาด 16 บิต จึงสามารถเก็บค่าได้ตั้งแต่ -32768 ถึง 32767 (ในกรณีแบบคิดเครื่องหมาย) หรือ 0 ถึง 65535 (ในกรณี UNSIGNED หรือไม่คิดเครื่องหมาย) ซึ่งสามารถเลือก Attribute เป็น UNSIGNED และ UNSIGNED ZEROFILL ได้เช่นเดียวกับ TINYINT

MEDIUMINT : สำหรับเก็บข้อมูลประเภทตัวเลขที่มีขนาด 24 บิต นั่นก็หมายความว่าสามารถเก็บข้อมูลตัวเลขได้ตั้งแต่ -8388608 ไปจนถึง 8388607 (ในกรณีแบบคิดเครื่องหมาย) หรือ 0 ถึง 16777215 (ในกรณีที่เป็น UNSIGNED หรือไม่คิดเครื่องหมาย) ซึ่งสามารถเลือก Attribute เป็น UNSIGNED และ UNSIGNED ZEROFILL ได้เช่นเดียวกับ TINYINT

INT : สำหรับเก็บข้อมูลประเภทตัวเลขที่มีขนาด 32 บิต หรือสามารถเก็บข้อมูลได้ตั้งแต่ -2147483648 ไปจนถึง 2147483647 ครับ (ในกรณีแบบคิดเครื่องหมาย) หรือ 0 ถึง 4294967295 (ในกรณีที่เป็น UNSIGNED หรือไม่คิดเครื่องหมาย) ซึ่งสามารถเลือก Attribute เป็น UNSIGNED และ UNSIGNED ZEROFILL ได้เช่นเดียวกับ

TINYINTBIGINT : สำหรับเก็บข้อมูลประเภทตัวเลขที่มีขนาด 64 บิต สามารถเก็บข้อมูลได้ตั้งแต่ -9223372036854775808 ไปจนถึง 9223372036854775807 เลยทีเดียว (แบบคิดเครื่องหมาย)

FLOAT[(M,D)] : ที่กล่าวถึงไปทั้งหมด ในตระกูล INT นั้นจะเป็นเลขจำนวนเต็ม หากเราบันทึกข้อมูลที่มีเศษทศนิยม มันจะถูกปัดทันที ดังนั้นหากต้องการจะเก็บค่าที่เป็นเลขทศนิยม ต้องเลือกชนิดขอฟิลด์เป็น FLOAT โดยจะเก็บข้อมูลแบบ 32 บิต

DOUBLE[(M,D)] : สำหรับเก็บข้อมูลประเภทตัวเลขทศนิยม เช่นเดียวกับ FLOAT แต่มีขนาดเป็น 64 บิต สามารถเก็บได้ตั้งแต่ -1.7976931348623157E+308 ถึง -2.2250738585072014E-308, 0 และ 2.2250738585072014E-308 ถึง 1.7976931348623157E+308

DECIMAL[(M,D)] : สำหรับเก็บข้อมูลประเภทตัวเลขทศนิยม เช่นเดียวกับ FLOAT แต่ใช้กับข้อมูลที่ต้องการความละเอียดและถูกต้องของข้อมูลสูง

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

TIMESTAMP[(M)] : สำหรับเก็บข้อมูลประเภทวันที่ และเวลาเช่นกัน แต่จะเก็บในรูปแบบของ YYYYMMDDHHMMSS หรือ YYMMDDHHMMSS หรือ YYYYMMDD หรือ YYMMDD แล้วแต่ว่าจะระบุค่า M เป็น 14, 12, 8

TIME : สำหรับเก็บข้อมูลประเภทเวลา มีค่าได้ตั้งแต่ -838:59:59 ไปจนถึง 838:59:59 โดยจะแสดงผลออกมาในรูปแบบ HH:MM:SS

YEAR[(2/4)] : สำหรับเก็บข้อมูลประเภทปี ในรูปแบบ YYYY หรือ YY แล้วแต่ว่าจะเลือก 2 หรือ 4 (หากไม่ระบุ จะถือว่าเป็น 4 หลัก) โดยหากเลือกเป็น 4 หลัก จะเก็บค่าได้ตั้งแต่ ค.ศ. 1901 ถึง 2155 แต่หากเป็น 2 หลัก จะเก็บตั้งแต่ ค.ศ. 1970 ถึง 2069

CHAR : สำหรับเก็บข้อมูลประเภทตัวอักษร แบบที่ถูกจำกัดความกว้างเอาไว้คือ 255 ตัวอักษร ไม่สามารถปรับเปลี่ยนได้เหมือนกับ VARCHAR หากทำการสืบค้นโดยเรียงตามลำดับ

TINYBLOB : สำหรับเก็บข้อมูลประเภทไบนารี ได้แก่ ไฟล์ข้อมูลต่างๆ, ไฟล์รูปภาพ, ไฟล์มัลติมีเดีย เป็นต้น คือไฟล์อะไรก็ตามที่อัพโหลดผ่านฟอร์มอัพโหลดไฟล์ในภาษา HTML โดย TINYBLOB นั้นจะมีเนื้อที่ให้เก็บข้อมูลได้ 256 ไบต์


TINYTEXT : ในกรณีที่ข้อความยาวๆ หรือต้องการที่จะค้นหาข้อความ โดยอาศัยฟีเจอร์ FULL TEXT SEARCH ของ MySQL เราอาจจะเลือกที่จะไม่เก็บข้อมูลลงในฟิลด์ประเภท VARCHAR ที่มีข้อจำกัดแค่ 256 ตัวอักษร แต่เราจะเก็บลงฟิลด์ประเภท TEXT แทน โดย TINYTEXT นี้ จะสามารถเก็บข้อมูลได้ 256 ตัวอักษร

BLOB : สำหรับเก็บข้อมูลประเภทไบนารี เช่นเดียวกับ TINYBLOB แต่สามารถเก็บข้อมูลได้ 64KBM

EDIUMBLOB : สำหรับเก็บข้อมูลประเภทไบนารี เช่นเดียวกับ TINYBLOB แต่เก็บข้อมูลได้ 16MB

MEDIUMTEXT : เก็บข้อมูลประเภทตัวอักษร เช่นเดียวกับ TINYTEXT แต่เก็บข้อมูลได้ 16,777,215 ตัวอักษร

LONGBLOB : สำหรับเก็บข้อมูลประเภทไบนารี เช่นเดียวกับ TINYBLOB แต่เก็บข้อมูลได้ 4GB

LONGTEXT : เก็บข้อมูลประเภทตัวอักษร เช่นเดียวกับ TINYTEXT แต่เก็บข้อมูลได้ 4,294,967,295 ตัวอักษร

SET : สำหรับเก็บข้อมูลที่เป็นกลุ่มของข้อมูลที่ยอมให้เลือกได้ 1 ค่าหรือหลายๆ ค่า ซึ่งสามารถกำหนดได้ถึง 64 ค่า

ENUM(Enumeration) >> หมายถึงเซตของข้อมูลชุดหนึ่งที่มีจำนวนสมาชิกที่กำหนดไว้แน่นอนและทราบค่าทุกตัว ซึ่งมักจะเป็นข้อมูลที่มีลักษณะคงที่

BINARYระบบเลขที่มีสัญลักษณ์เพียงสองตัวคือ 0 (ศูนย์) กับ 1 (หนึ่ง) บางครั้งอาจหมายถึงการที่มีโอกาสเลือกได้เพียง 2 ทาง เช่น ปิดกับเปิด, ไม่ใช่กับใช่, เท็จกับจริง, ซ้ายกับขวา เป็นต้น

BOOL คือข้อมูลที่มีค่าเป็นจริง (True) หรือเท็จ (False)

VARBINARY คือ มีลักษณะการเก็บคล้าย Varcha คือการเก็บข้อมูลตามที่รับมาจริงเท่านั้น มีขนาดสูงสุดมากถึง 8000 ไบต์

ตัวอย่างการใช้โค้ด php

ตัวอย่างที่ 1 คำสั่งแสดงผล (Code ที่สร้างในไฟล์ example1.php)
<?
echo " This is My first page with PHP programming ";
?>

ตัวอย่างที่ 2 การใช้งานตัวแปร (Code ที่สร้างในไฟล์ example2.php)
<?
   $Txt_var = " Coding by using PHP programming";       // PHP จะกำหนด
ชนิดตัวแปรโดยอัตโนมัต ไม่ต้องประกาศชนิด
   $Int_var = "1.00";
   echo $Txt_var;
   echo $Int_var;
?>
หมายเหตุ: \\ คือรูปแบบการเขียนหมายเหตุไว้ในโปรแกรม (ข้อความหลัง \\ จะไม่ถูกนำไปประมวลผล
 และไม่แสดงออกมา )

ตัวอย่างที่ 3 การใช้งานตัวแปรร่วมกับข้อความ (Code ที่สร้างในไฟล์ example3.php)
<?
   $Name = "Jamornkul Laokietkul ";
   $Country = "Thailand";    
   echo "My name is $Name\n";
   echo " I came from ".$Country;

?>

วันจันทร์ที่ 10 กันยายน พ.ศ. 2555

Lego --- กับการเสริมสร้างจินตนาการ

                                                                          ::  LEGO  ::
               เป็นสิ่งที่ช่วยให้ใครหลายคนมีจินตนาการที่กว้างไกลเนื่องจาก ตัวต่อ เลโกเนั้น เป็นเสมือนสิ่งที่เกิดขึ้นจากจินตนาการ โดยในตอนเเรกสิ่งที่เราคิดมันไม่มีรูปร่างที่เเน่นอน เเต่เราสามารถใช้โลโก้เพื่อทำให้สิ่งที่เราคิดเป็นรูปเป็นร่างได้ เเละมันยังทำให้สิ่งที่เราวางเเผนไว้ดูเข้าใจง่ายยิ่งขึ้นอีกด้วย โดยเลโก้นั้นจะมีหลากหลายรูปเเบบทั้งเเบบสำเร็จรูป เเละเเบบกล่องซึ่งเราก็ต้องใช้จินตนาการในการสร้างสรรค์ให้เกิดความสุขได้ เเละนอกจากจะได้เสริมสร้างความคิดเเล้ว ก็ยังช่วยให้เราสนุกร่าเริงไปกับผลงานนั้นๆได้อีกด้วย ::]

วันอาทิตย์ที่ 9 กันยายน พ.ศ. 2555

ทำความรู้จักกับหุ่นยนต์

         
                       หุ่นยนต์ เป็นสิ่งที่หลายๆคนรู้ โดยเฉพาะในเด็กผู้ชาย ความใฝ่ฝันที่จะได้บังคับหุ่นยนต์เหมือนในการ์ตูนต้อสู้ที่เคยได้ดูมา เเต่ว่าก็รู้ว่าสุดท้ายคงเป็นได้เเต่ในความฝัน แต่ในปัจจุบัน หุ่นยนต์ได้เข้ามามีบทบาทมากขึ้นจากเทคโนโลยีปัจจุบัน มนุษย์สามารถใช้เทคโนโลยีเเทนการทำงานของคนกันอย่างเเพร่หลายเเต่ก็ยังไม่ถึงขั้นอย่างในหนังไซไฟ หรือภาพยนต์หุ่นอลังการที่เคยดูกันมา เเต่ถ้าหากเราพัฒนาความรู็ความสามารถมากขึ้น ในอนาคตเราอาจจะมีหุ่นยนต์อย่างในจินตนาการกันอยู่ทุกบ้านก็เป็นไปได้ -----------------------------------------------------------------------
                                                                                                                             B2T