Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL
MySQL
  1. การใช้งานฟังก์ชันควบคุมการไหล IFNULL() ใน MySQL

    ฟังก์ชันควบคุมการไหล IFNULL() ของ MySQL จะคืนค่าอาร์กิวเมนต์แรก หากมันไม่ใช่ NULL มิฉะนั้น จะคืนค่าอาร์กิวเมนต์ที่สอง ไวยากรณ์ IFNULL(expression1, expression2) ที่นี่ หาก expression1 ไม่ใช่ NULL IFNULL() จะคืนค่า expression1 มิฉะนั้น expression2 จะคืนค่า NULL หากอาร์กิวเมนต์ทั้งสองเป็น NULL ตัวอย่า

  2. MySQL รักษาสภาพแวดล้อมไว้ตอนที่ Stored Procedure ถูกสร้างหรือไม่

    จริงๆ แล้ว MySQL รักษาสภาพแวดล้อมไว้ตอนที่ Stored Procedure ถูกสร้าง สามารถเข้าใจได้จากตัวอย่างต่อไปนี้ ซึ่งเราใช้สองแท่งสำหรับการต่อสตริง นี่ถูกต้องกฎก็ต่อเมื่อโหมด SQL เป็น ansi แต่ถ้าเราเปลี่ยนโหมด SQL เป็น non-ansi Procedure ยังคงทำงานเหมือนการตั้งค่าเดิมยังคงเป็นจริง ตัวอย่าง SELECT a||b// Q

  3. ขอบเขตของตัวแปร (Scope of variables) ภายใน MySQL Stored Procedure หมายถึงอะไร

    สมมติว่าหากเราประกาศตัวแปรภายในบล็อก BEGIN/END ขอบเขตของตัวแปรนี้จะอยู่ในบล็อกเฉพาะนั้น เรายังสามารถประกาศตัวแปรด้วยชื่อเดียวกันภายในบล็อก BEGIN/END อีกบล็อกหนึ่งซึ่งจะถูกต้องตามกฎแต่วงเขตจะอยู่ภายในบล็อก BEGIN/END ของมัน สามารถเข้าใจได้จากตัวอย่างต่อไปนี้ ซึ่งเราสร้าง Procedure เพื่อแสดงขอบเขตของต

  4. การใช้งานฟังก์ควบคุมการไหล NULLIF() ใน MySQL

    ฟังก์ชันควบคุมการไหล NULLIF() ของ MySQL จะคืนค่า NULL หากอาร์กิวเมนต์ทั้งสองเหมือนกัน มิฉะนั้น จะคืนค่าอาร์กิวเมนต์แรก ไวยากรณ์ NULLIF(expression1, expression2) ที่นี่ หาก expression1 = expression2 จะคืนค่า NULL มิฉะนั้น expression1 จะถูกคืนค่า ตัวอย่างต่อไปนี้จะแสดงสิ่งนี้: mysql> Select NULLIF

  5. MySQL ประเมิน Expression ใน NULLIF() อย่างไรเมื่ออาร์กิวเมนต์ไม่เท่ากัน

    ตามที่ทราบว่า ฟังก์ชันควบคุมการไหล NULLIF() ของ MySQL จะคืนค่าอาร์กิวเมนต์แรก หากอาร์กิวเมนต์ทั้งสองไม่เหมือนกัน อาร์กิวเมนต์แรกถูกคืนค่าเพราะ MySQL ประเมินอาร์กิวเมนต์แรกสองครั้ง หากอาร์กิวเมนต์ทั้งสองไม่เหมือนกัน ตัวอย่าง mysql> Select NULLIF(Tutorialspoint,MySQL); +--------------------------

  6. สร้าง MySQL Stored Procedure รับชื่อฐานข้อมูลเป็นพารามิเตอร์ แสดงรายการตารางพร้อมรายละเอียด

    สมมติว่าปัจจุบันเรากำลังใช้ฐานข้อมูลชื่อ query และมีตารางดังนี้: mysql> Show tables in query; +-----------------+ | Tables_in_query | +-----------------+ | student_detail | | student_info | +-----------------+ 2 rows in set (0.00 sec) ต่อไปนี้คือ Stored Procedure ซึ่งจะรับชื่อฐานข้อมู

  7. วิธีที่ MySQL Stored Procedure เรียก Stored Procedure อีกตัวหนึ่งภายใน

    เป็นไปได้ที่ MySQL Stored Procedure จะเรียก MySQL Stored Procedure อีกตัวหนึ่งภายในได้ เพื่อสาธิต เราใช้ตัวอย่างที่ Stored Procedure หนึ่งจะเรียก Stored Procedure อีกตัวเพื่อหา last_insert_id ตัวอย่าง END// Query OK, 0 rows affected (0.10 sec) ตอนนี้ ใน Procedure ถัดไปคือ insert2() เราจะเรียก Sto

  8. วิธีเข้าถึงตารางผ่าน MySQL Stored Procedures

    เราสามารถเข้าถึงตารางหนึ่งหรือทั้งหมดจาก MySQL Stored Procedure ตัวอย่างต่อไปนี้เป็นกรณีที่เราสร้าง Stored Procedure ที่จะรับชื่อตารางเป็นพารามิเตอร์และหลังจากเรียกใช้ จะสร้างชุดผลลัพธ์พร้อมรายละเอียดทั้งหมดจากตาราง ตัวอย่าง END// Query OK, 0 rows affected (0.16 sec) ตอนนี้ เรียก Procedure ด้วยชื

  9. วิธีทำ START TRANSACTION ภายใน MySQL Stored Procedure

    ตามที่ทราบคำสั่ง START TRANSACTION จะเริ่มธุรกรรมและตั้งค่าโหมด auto-commit เป็น off ในตัวอย่างต่อไปนี้ เราสร้าง Stored Procedure พร้อม START TRANSACTION ซึ่งจะแทรกเรคคอร์ดใหม่ในตาราง employee.tbl ที่มีข้อมูลดังนี้: mysql> Select * from employee.tbl; +----+---------+ | Id | Name | +----+--

  10. วิธีทำ COMMIT ธุรกรรมภายใน MySQL Stored Procedure

    ตามที่ทราบคำสั่ง START TRANSACTION จะเริ่มธุรกรรมและ COMMIT ใช้เพื่อยืนยันการเปลี่ยนแปลงใดๆ ที่ทำหลังจากเริ่มธุรกรรม ในตัวอย่างต่อไปนี้ เราสร้าง Stored Procedure พร้อม COMMIT ร่วมกับ START TRANSACTION ซึ่งจะแทรกเรคคอร์ดใหม่และ Commit การเปลี่ยนแปลงในตาราง employee.tbl ที่มีข้อมูลดังนี้: mysql> S

  11. เกิดอะไรขึ้นเมื่อใช้ COMMIT ใน Stored Procedure และธุรกรรมหนึ่งล้มเหลว

    สมมติว่าคำสั่งหนึ่งล้มเหลวหรือสร้างข้อผิดพลาด และอีกคำสั่งหนึ่ง (หรือหลายคำสั่ง) รันได้อย่างถูกต้อง MySQL ยังคง COMMIT การเปลี่ยนแปลงของคำสั่งที่รันได้อย่างถูกต้อง สามารถเข้าใจได้จากตัวอย่างต่อไปนี้ ซึ่งเราใช้ตาราง employee.tbl ที่มีข้อมูลดังนี้: ตัวอย่าง END // Query OK, 0 rows affected (0.00 se

  12. วิธีทำ ROLLBACK ธุรกรรมภายใน MySQL Stored Procedure

    ตามที่ทราบว่า ROLLBACK จะย้อนกลับการเปลี่ยนแปลงใดๆ ที่ทำไปที่ฐานข้อมูลหลังจากเริ่มธุรกรรมแล้ว เพื่อทำ ROLLBACK ใน MySQL Stored Procedure เราต้องประกาศ EXIT Handler เราสามารถใช้ Handler สำหรับ sqlexception หรือ SQL warnings ได้ สามารถเข้าใจได้จากตัวอย่างที่มี Stored Procedure ที่มี ROLLBACK สร้างสำห

  13. การกระทำภายใน Stored Procedure และ Functions ถูกจำลองอย่างไร

    การกระทำมาตรฐานที่ดำเนินการใน Stored Procedures และ Functions จะถูกจำลองจาก Master MySQL Server ไปยัง Slave MySQL Server แม้แต่การสร้าง Stored Procedures และ Functions ที่ดำเนินการผ่านคำสั่ง DDL ธรรมดาบน Master MySQL Server ก็จะถูกจำลองไปยัง Slave MySQL Server ด้วยวิธีนี้ Object จะมีอยู่บนเซิร์ฟเวอ

  14. ข้อกำหนดด้านความปลอดภัยพิเศษสำหรับการใช้ Stored Procedures และ Functions ร่วมกับ Replication

    จริงๆ แล้ว MySQL Slave Server มีอำนาจในการรันคำสั่งใดๆ ที่อ่านจาก Binary Log ของ Master MySQL Server ดังนั้นจึงมีข้อจำกัดด้านความปลอดภัยพิเศษสำหรับการใช้ Stored Functions ร่วมกับ Replication หาก Replication หรือ Binary Logging โดยทั่วไป (เพื่อวัตถุประสงค์ Point-in-time Recovery) อยู่ในสถานะ Active

  15. ข้อจำกัดในการจำลอง (Replication) Stored Procedure และ Functions

    ต่อไปนี้คือข้อจำกัดสำหรับการจำลอง Stored Procedure และ Functions: ประเภทของการกระทำ (Type of Action) - การจำลอง Stored Procedure และ Functions ขึ้นอยู่กับประเภทของการกระทำ หากการกระทำที่ฝังอยู่ใน Stored Procedure เป็น nondeterministic (สุ่ม) หรือขึ้นอยู่กับเวลา อาจจะไม่จำลองได้อย่างถูกต้อง ตามธรรม

  16. สร้าง Stored Procedure เพื่อดูรายละเอียดตาราง MySQL เฉพาะในฐานข้อมูล

    ตัวอย่างต่อไปนี้จะสร้าง Procedure ชื่อ tabledetails ซึ่งให้รายละเอียดทั้งหมดของตารางเฉพาะที่จัดเก็บในฐานข้อมูล ตัวอย่าง END // Query OK, 0 rows affected (0.00 sec) mysql> DELIMITER ; mysql> CALL tabledetails; +-------------+-------------+------+-----+---------+-------+ | Field | T

  17. วิธีดึงข้อมูลทั้งหมดของตารางโดยส่งชื่อตารางเป็นพารามิเตอร์ของ Stored Procedure ใน MySQL

    สมมติว่าหากเราต้องการดูข้อมูลทั้งหมดของตารางโดยส่งชื่อตารางเป็นพารามิเตอร์ของ Stored Procedure ตัวอย่างต่อไปนี้จะสร้าง Procedure ชื่อ details ซึ่งรับชื่อตารางเป็นพารามิเตอร์: END // Query OK, 0 rows affected (0.00 sec) ตอนนี้ เรียกใช้ Procedure นี้โดยให้ชื่อตารางเป็นพารามิเตอร์ และมันจะแสดงข้อมูล

  18. ฟังก์ชัน INTERVAL() ใน MySQL คืออะไร

    ฟังก์ชัน INTERVAL() ของ MySQL คืนค่าดัชนีของอาร์กิวเมนต์ที่มากกว่าอาร์กิวเมนต์แรก ไวยากรณ์ INTERVAL(N,N1,N2,N3,...) ที่นี่ ฟังก์ชันนี้จะเปรียบเทียบอาร์กิวเมนต์ที่ 1 คือ N กับอาร์กิวเมนต์อื่นๆ คือ N1, N2, N3 และไปเรื่อยๆ อาร์กิวเมนต์ทั้งหมดถูกจัดการเป็นจำนวนเต็ม มันคืนค่าผลลัพธ์ดังนี้: ถ้า N < N

  19. ความแตกต่างระหว่างฟังก์ชัน ISNULL() และตัวดำเนินการ IS NULL ใน MySQL

    ทั้ง ISNULL() ฟังก์ชันและ IS NULL ตัวดำเนินการเปรียบเทียบ ไม่มีความแตกต่างอย่างมีนัยสำคัญและมีพฤติกรรมร่วมกันบางอย่าง ความแตกต่างเดียวที่เราเห็นคือในไวยากรณ์ของพวกเขา ฟังก์ชัน ISNULL() จะมี Expression เป็นอาร์กิวเมนต์ของมัน ในขณะที่ IS NULL ตัวดำเนินการเปรียบเทียบมี Expression อยู่ทางซ้ายของมัน มิฉ

  20. MySQL คืนค่าอะไรถ้าอาร์กิวเมนต์แรกของ INTERVAL() เป็น NULL

    MySQL คืนค่า -1 เป็นผลลัพธ์ หากอาร์กิวเมนต์แรกของฟังก์ชัน INTERVAL() เป็น NULL ตัวอย่างต่อไปนี้จะสาธิต: mysql> Select INTERVAL(NULL,20,32,38,40,50,55); +--------------------------------------+ | INTERVAL(NULL,20,32,38,40,50,55) | +--------------------------------------+ | -1

Total 4564 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:194/229  20-คอมพิวเตอร์/Page Goto:1 188 189 190 191 192 193 194 195 196 197 198 199 200