Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL
MySQL
  1. Transaction ใน MySQL คืออะไร และคุณสมบัติ ACID

    Transaction คือกลุ่มคำสั่งจัดการฐานข้อมูลที่ทำงานร่วมกันเหมือนเป็นหน่วยงานเดียว ไม่เสร็จสิ้นจนกว่าทุก Operation จะสำเร็จ ถ้ามีอะไรล้มเหลว ทั้ง Transaction จะล้มเหลว คุณสมบัติ ACID Atomicity (อะตอมิกิตี้) - ทุก Operation สำเร็จทั้งหมด มิฉะนั้น Rollback กลับสู่สถานะเดิม Consistency (คอนซิสเทนซี) - ฐ

  2. วิธี Implement MySQL Transaction

    Transaction รัน Statement เป็นหน่วยเดียว ล้มเหลวทุกอย่าง Rollback สำเร็จ Commit MySQL มีคำสั่ง: START TRANSACTION เริ่ม Transaction แจ้งให้ MySQL รู้ว่าต่อไปเป็น Work Unit เดียว COMMIT Commit การเปลี่ยนแปลงลงฐานข้อมูล ROLLBACK ยกเลิกการเปลี่ยนแปลง กลับสู่สถานะก่อน Transaction ตัวอย่าง Commit mysql&

  3. เกิดอะไรขึ้นถ้า MySQL Query คืน 0 แถว (No Rows)

    MySQL แสดงจำนวนแถวในผลลัพธ์และเวลารัน ตัวอย่างมี 3 แถว: mysql> Select * from ratelist ORDER BY Price LIMIT 3; +----+------+-------+ | Sr | Item | Price | +----+------+-------+ | 5 | T | 250 | | 1 | A | 502 | | 2 | B | 630 | +----+------+-------+ 3 rows in set (0.00 sec) แต่ถ้า

  4. วิธีได้ค่ารวมตามกลุ่ม (Category) ใน 1 แถวเดียวด้วย MySQL SUM()

    ใช้ SUM() รวมค่าตาม Category ใน 1 แถว ตัวอย่างตาราง ratelist หาผลรวม price: mysql> select SUM(price) as totalprice from ratelist; +------------+ | totalprice | +------------+ | 3237 | +------------+ 1 row in set (0.00 sec) คืนค่ารวมราคาทั้งหมดใน 1 แถวเดียว

  5. MySQL จัดการพฤติกรรม Transaction ด้วยโหมด Autocommit อย่างไร

    MySQL จัดการ Transaction ด้วย 2 โหมด: Autocommit ON (Default) ทุก Statement เป็น Transaction แยกต่างหาก Commit อัตโนมัติเมื่อจบ ตั้งค่า: SET AUTOCOMMIT = 1 mysql> SET AUTOCOMMIT = 1; Query OK, 0 rows affected (0.07 sec) Autocommit OFF Statement หลายตัวรวมเป็น Transaction เดียว ไม่ Commit จนกว่าจ

  6. MySQL กำหนดจุดจบคำสั่ง (Statement Terminator) อย่างไร

    MySQL จบคำสั่งเมื่อเจอตัวใดตัวหนึ่ง: 1. Semicolon (;) ทั่วไป ใช้กับ Single-line และ Multi-line: mysql> Select * from employee; (Single line) mysql> Select * -> from -> employee; (Multiple line) 2. \G Option ส่งคำสั่ง Execute และแสดงผลแนวตั้ง: mysql> Select * from Student\G **

  7. ผลลัพธ์เมื่อใช้ค่า NULL ในนิพจน์คณิตศาสตร์ของ MySQL

    NULL ไม่ใช่ค่า 0 แต่อาจแทน ไม่มีข้อมูล ใน MySQL ถ้าใช้ NULL ในนิพจน์คณิตศาสตร์ ผลลัพธ์จะเป็น NULL เสมอ ตัวอย่าง mysql> Select 65/NULL,65+NULL,65*NULL,65-NULL,65%NULL; +---------+---------+---------+---------+---------+ | 65/NULL | 65+NULL | 65*NULL | 65-NULL | 65%NULL | +---------+---------+----

  8. วิธีใช้ 2 คอลัมน์ใน WHERE Clause ของ MySQL

    ใช้ 2 คอลัมน์ของตารางเดียวกันใน WHERE ได้ แต่นادرใช้ ตัวอย่าง: mysql> Select F_name, L_name -> From Customer -> where F_name = L_name; Empty set (0.00 sec) เปรียบเทียบ F_name และ L_name จากตาราง Customer เดียวกัน ผลลัพธ์ Empty Set เพราะไม่มีแถวที่ชื่อ-นามสกุลเหมือนกัน

  9. ข้อจำกัดของ MySQL Query ที่ไม่มี Table List (No FROM Clause) เกี่ยวกับจำนวนแถวและคอลัมน์

    Query ที่ไม่มี Table List (No FROM Clause) จะคืน แถวเดียว (1 row) เท่านั้น แต่คอลัมน์สามารถมีหลายคอลัมน์ได้ ตัวอย่าง mysql> Select 65/NULL,65+NULL,65*NULL,65-NULL,65%NULL; +------------+--------------+-------------+-------------+---------+ | 65/NULL | 65+NULL | 65*NULL | 65-NULL

  10. ขณะเชื่อมต่อฐานข้อมูล MySQL หนึ่ง จะดูรายการตารางของฐานข้อมูลอื่นได้อย่างไร

    ใช้ SHOW TABLES FROM Database_name โดย Database_name คือชื่อฐานข้อมูลที่ไม่ได้ใช้งานอยู่ ตัวอย่างดูตารางในฐานข้อมูล tutorial: mysql> show tables from tutorial; +--------------------+ | Tables_in_tutorial | +--------------------+ | employee | | showzerofill | | student

  11. วิธีแปลง Subquery เป็น INNER JOIN ใน MySQL

    แปลง Subquery IN เป็น INNER JOIN ใช้ตาราง customers และ reserve: mysql> Select * from customers; +-------------+----------+ | Customer_Id | Name | +-------------+----------+ | 1 | Rahul | | 2 | Yashpal | | 3 | Gaurav | | 4 | Virender | +---------

  12. วิธีแปลง Subquery เป็น RIGHT JOIN ใน MySQL

    ตัวอย่างเดียวกันกับ LEFT JOIN แต่ใช้ RIGHT JOIN: mysql> Select * from Customers; +-------------+----------+ | Customer_Id | Name | +-------------+----------+ | 1 | Rahul | | 2 | Yashpal | | 3 | Gaurav | | 4 | Virender | +-------------+----------+

  13. วิธีแปลง Subquery เป็น LEFT JOIN ใน MySQL

    ตัวอย่างแปลง Subquery NOT IN เป็น LEFT JOIN ใช้ตาราง customers และ reserve: mysql> Select * from customers; +-------------+----------+ | Customer_Id | Name | +-------------+----------+ | 1 | Rahul | | 2 | Yashpal | | 3 | Gaurav | | 4 | Virender |

  14. วิธีทดสอบว่ามีเรคคอร์ดใน MySQL Subquery หรือไม่ ด้วย EXISTS

    ใช้ EXISTS Operator ทดสอบว่า Subquery คืนแถวไหม ไวยากรณ์: WHERE EXISTS (Subquery) EXISTS (Subquery) เป็น TRUE ถ้า Subquery คืนอย่างน้อย 1 แถว มิฉะนั้น FALSE ตัวอย่าง ใช้ข้อมูล Customers และ Reservations: mysql> Select * from Customers; +-------------+----------+ | Customer_Id | Name | +-----

Total 4564 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:189/229  20-คอมพิวเตอร์/Page Goto:1 183 184 185 186 187 188 189 190 191 192 193 194 195