ส่วนมากแล้วจะนิยมใช้ร่วมกับ การพัฒนาแอฟบนมือถือ เช่น android เพื่อใช้จัดเก็บข้อมูลทั้งหมดที่ทำงานบนมือถือ เช่น การตั้งค่าต่างๆ ,ข้อมูลการโทรเข้า-ออก รายชื่อเบอร์โทรติดต่อ ฯลฯ รวมถึง Web Browser อย่างเช่น Firefox ก็ใช้ SQLITE จัดเก็บข้อมูลเหมือนกันนะครับ เช่น ประวัติการเข้าเว็บ, ที่คั้นหน้า , การตั้งค่าต่างๆ ฯลฯ PHP เองก็มี Class ที่สร้างเอาไว้ติดต่อกับ SQLITE อยู่ครับ เราสามารถเรียกใช้ได้เลยทันที
มาดูวิธีใช้งานแบบง่ายๆในแบบของผมกันเลยครับ
1.อันดับแรกให้ติดตั้ง Add on ของ Firefox ชื่อว่า SQLite Manager ตัวนี้ก่อน -> https://addons.mozilla.org/en-us/firefox/addon/sqlite-manager/
2.เมื่อติดตั้งเสร็จแล้วให้เปิดโปรแกรมตัวนี้ขึ้นมา โดยไปที่ เครื่องมือ >> SQLite Manager ดังรูป
3.เมื่อโปรแกรมแสดงขึ้นมา ให้เราสร้างฐานข้อมูล โดยไปที่เมนู Database >> New Database ดังรูป
3.ให้ใส่ชื่อฐานข้อมูล ตัวอย่างผมชื่อว่า db_test เมื่อกด ตกลง แล้วมันจะให้เราเลือกที่อยุ่จัดเก็บไฟล์ db_test.sqlite คุณสามารถเลือกที่จัดเก็บได้ตามต้องการ
4.เมื่อสร้างฐานข้อมูลสมบูรณ์แล้วเราจะได้ไฟล์ฐานข้อมูล (db_test.sqlite) ซึ่งจะจัดเก็บในโฟลเดอร์ที่คุณเลือก และในแสดงในโปรแกรม ดังรูป
5.ต่อไปเราจะสร้างเทเบิลกับฟิลด์กันครับ โดยคลิกขวาที่ Tables (0) เลือก Create Table จะแสดงหน้าต่างดังรูป
ในขั้นตอนที่ 5 จะเห็นว่า ผมตั้งชื่อเทเบิล (Table Name) ว่า tbl_test และมีฟิลด์หรือคอลัมน์อยุ่ 3 ฟิลด์ คือ id , name , detail สำหรับ Data Type เจ้า SQLite จะไม่มีให้เรากำหนดขนาดครับ ซึ่งผมไม่รู้ว่าเป็นผลดีหรือผลเสียหรือปล่าวกับหน่วยความจำในเครื่องของเรา
การเชื่อมต่อกับ PHP
เราจะใช้ PDO ซึ่งเป็น Class ในการเชื่อมต่อกับฐานข้อมูลซึ่งรองรับ SQLite ด้วยครับ
1.คำสั่ง Connect ให้ใช้คำสั่งดังนี้ เช่น $db = new PDO('sqlite:db/db_test.sqlite');
2.ปิดการ Connect ใช้คำสั่ง $db->NULL;
3.คำสั่งเกี่ยวกับการดึงข้อมูลมาแสดงผล ใช้คำสั่ง เช่น $sql=$db->query("SELECT * FROM tbl_test ");
4.เราค่าข้อมูลจากข้อ 3 มาวนลูป ใช้คำสั่ง ต้วอย่างเช่น
while($show=$sql->fetch()){
echo $show['ชื่อฟิลด์'];
}
5.เพิ่ม/ลบ/แก้ไข ใช้คำสั่งเดียวกันคือ $db->exec("INSERT หรือ UPDATE หรือ DELETE");
ทั้งหมดก็มีแค่นี้แหละครับ อยาก Advancd มากกว่านี้ ให้ศึกษาจาก http://www.php.net/manual/en/class.pdo.php
ไฟล์ชื่อ test.db กับ test.sqlite มันเหมือนกันไหมค่ะ
ตอบลบปัญหาที่พบคือ มันไม่ติดต่อกับ SQLite batabase ที่สร้างไว้
นี่คือคำสั่งที่เขียนติดต่อ
$conn = new PDO("sqlite:/db/db_test.sqlite");
echo "Connected to database \n";