หน้าแรก
หน้าแรก
ความแตกต่างที่สำคัญที่สุดระหว่างคำสั่ง MySQL TRUNCATE และ DROP คือคำสั่ง TRUNCATE จะไม่ทำลายโครงสร้างของตาราง แต่ในทางกลับกัน คำสั่ง DROP จะทำลายโครงสร้างของตารางด้วย ตัวอย่าง mysql> Create table testing(id int PRIMARY KEY NOT NULL AUTO_INCREMENT,Name Varchar(20)); Query OK, 0 rows affected (0.24
คำสั่ง MySQL DELETE ใช้เพื่อลบแถว/วินาทีออกจากตาราง ใช้กับคำสั่ง WHERE ไวยากรณ์ DELETE From Table_name WHERE Condition; ตัวอย่าง =100 mysql> select * from employee; +------+--------+ | Id | name | +------+--------+ | 100 | Ram | | 200 | Gaurav | | 300
ดังที่เราทราบแล้วว่า TRUNCATE จะลบแถวทั้งหมดโดยไม่ต้องลบโครงสร้างของตารางออกจากฐานข้อมูล งานเดียวกันสามารถทำได้ด้วยความช่วยเหลือของคำสั่ง DELETE ในการลบแถวทั้งหมดออกจากตาราง แต่มีความแตกต่างที่สำคัญของการเริ่มต้นใหม่ของ PRIMARY KEY AUTO_INCREMENT ระหว่างทั้งสองคำสั่ง สมมติว่าคอลัมน์ถูกกำหนดเป็น AUT
ใน MySQL เราสามารถแทรกวันที่และเวลาปัจจุบันโดยอัตโนมัติในคอลัมน์ที่แทรกค่าในคอลัมน์อื่นโดยประกาศคอลัมน์นั้นเป็น DEFAULT CURRENT_TIMESTAMP ตัวอย่าง mysql> Create table testing -> ( -> StudentName varchar(20) NOT NULL, -> RegDate TIMESTAMP DEFAULT CUR
เหตุผลเบื้องหลังแนวคิดนี้คือ MySQL ต้องการให้คีย์เวิร์ดของหน่วยเป็นเอกพจน์ โดยไม่คำนึงถึงกฎไวยากรณ์ภาษาอังกฤษ หากเราจะพยายามระบุช่วงเวลา เช่น 7 วัน 2 ชั่วโมง เป็นต้น MySQL จะสร้างข้อผิดพลาดทางไวยากรณ์ดังนี้ - mysql> Select '2017-02-25 05:04:30' + INTERVAL 2 days; ERROR 1064 (42000): You h
สำหรับการแทรกค่าในคอลัมน์โดยไม่ระบุชื่อของคอลัมน์ในคำสั่ง INSERT INTO เราต้องให้จำนวนค่าที่ตรงกับจำนวนคอลัมน์ในตารางควบคู่ไปกับการดูแลประเภทข้อมูลของคอลัมน์นั้นด้วย ตัวอย่าง ในตัวอย่างด้านล่าง เราได้แทรกค่าโดยไม่ได้ระบุชื่อของคอลัมน์ mysql> Insert into student values(100,'Gaurav','Ph
โดยใช้คำสั่ง ALTER เราสามารถเพิ่มคอลัมน์ลงในตารางที่มีอยู่ได้ ไวยากรณ์ Alter table table-name ADD (column-name datatype); ตัวอย่าง ในตัวอย่างด้านล่าง ด้วยความช่วยเหลือของ ALTER Command คอลัมน์ GRADE จะถูกเพิ่มลงในตาราง Student mysql> Alter table Student ADD (Grade Varchar(10)); Query OK, 5 rows
ใน MySQL เราสามารถแทรกวันที่และเวลาปัจจุบันโดยอัตโนมัติในคอลัมน์ที่แทรกค่า NULL ในคอลัมน์อื่นๆ โดยการประกาศคอลัมน์นั้นเป็น DEFAULT CURRENT_TIMESTAMP ในกรณีนี้ เราไม่สามารถประกาศคอลัมน์ NOT NULL ที่เราต้องการแทรกค่า NULL ได้ mysql> Create Table Testing1(Name Varchar(20), RegStudent TIMESTAMP DEFAU
สมมติว่าเราต้องการเก็บวันที่เช่นวันที่ 30 กุมภาพันธ์ในตาราง MySQL จากนั้นเราต้องตั้งค่าโหมด ALLOW_INVALID_DATES ให้เปิดใช้งานก่อน ตัวอย่างเช่น ฉันกำลังพยายามเพิ่มโดยไม่ได้เปิดใช้งานโหมด ALLOW_INVALID_DATES วันที่ประเภทนี้ในตาราง MySQL จะแสดงข้อผิดพลาดดังต่อไปนี้ - mysql> Insert into date_testing
เรายังสามารถเพิ่มหลายคอลัมน์ลงในตารางที่มีอยู่ได้ด้วยความช่วยเหลือของคำสั่ง ALTER ไวยากรณ์ของมันจะเป็นดังนี้ − ไวยากรณ์ Alter table table-name ADD (column-name1 datatype, column-name2 datatype,… column-nameN datatype); ตัวอย่าง ในตัวอย่างด้านล่าง ด้วยความช่วยเหลือของ ALTER Command คอลัมน์ Add
ในขณะที่เพิ่มคอลัมน์ลงในตารางที่มีอยู่โดยใช้คำสั่ง ALTER เราก็สามารถระบุค่าเริ่มต้นได้เช่นกัน ไวยากรณ์ Alter table table-name ADD (column-name datatype default data); ตัวอย่าง ในตัวอย่างด้านล่าง ด้วยความช่วยเหลือของ ALTER Command คอลัมน์ City จะถูกเพิ่มด้วยค่าเริ่มต้น DELHI ลงในตาราง Student mysql&
โดยการใช้คำหลัก MODIFY กับคำสั่ง ALTER TABLE เราสามารถแก้ไขคอลัมน์/s ของตาราง MySQL ได้ ไวยากรณ์สำหรับสิ่งเดียวกันมีดังต่อไปนี้ ไวยากรณ์ Alter table table_name MODIFY column_name1 datatype, MODIFY column_name2 datatype… MODIFY column_nameN datatype); ตัวอย่าง ในตัวอย่างด้านล่าง ด้วยความช่วยเห
เราจำเป็นต้องใช้ฟังก์ชัน DATE_FORMAT() เพื่อแสดงวันที่ในรูปแบบอื่น ฟังก์ชันนี้จะมีอาร์กิวเมนต์สองอาร์กิวเมนต์ อย่างแรกคือวันที่ และวินาทีคือสตริงรูปแบบ ตัวอย่าง − สมมติว่าในตาราง date_testing เรามีสามวันที่ในรูปแบบต่อไปนี้ mysql> Select * from date_testing; +------------+ | Date &n
อย่างที่เราทราบดีว่าเราสามารถคัดลอกข้อมูลและโครงสร้างจากตารางที่มีอยู่โดยใช้สคริปต์ CTAS หากเราต้องการคัดลอกข้อมูลด้วยเงื่อนไขบางอย่าง เราจำเป็นต้องใช้ส่วนคำสั่ง WHERE กับสคริปต์ CTAS พิจารณาตัวอย่างด้านล่าง − mysql> Create table EMP_BACKUP2 AS SELECT * from EMPLOYEE WHERE id = 300 AND Name =
สมมติว่าเราลืมชื่อคอลัมน์ในตารางที่มีอยู่แล้ว เราก็สามารถใช้ SHOW คอลัมน์ คำสั่งดังต่อไปนี้เพื่อรับรายการคอลัมน์ - mysql> SHOW COLUMNS from Employee\G *************************** 1. row *************************** Field: Id Type: int(11) Null: YES
ใช่ เราสามารถใช้ DESCRIBE หรือ อธิบาย คำสั่งแทน แสดงคอลัมน์ คำสั่งเพื่อรับรายการของคอลัมน์ในตารางที่มีอยู่ ในตัวอย่างด้านล่าง เราได้ใช้ DESCRIBE และ อธิบาย คำสั่งบนตาราง พนักงาน และได้ผลลัพธ์ชุดเดียวกับที่ได้รับหลังจาก แสดงคอลัมน์ คำสั่ง - mysql> DESCRIBE Employee\G *************************** 1.
ด้วยความช่วยเหลือของแบบสอบถาม MySQL ต่อไปนี้ เราจะได้รับวันสุดท้ายของเดือนก่อนหน้า - mysql> SELECT LAST_DAY(now() - INTERVAL 1 MONTH) AS 'LAST DAY OF PREVIOUS MONTH'; +----------------------------+ | LAST DAY OF PREVIOUS MONTH | +----------------------------+ | 2017-09-30 &
ด้วยความช่วยเหลือของแบบสอบถาม MySQL ต่อไปนี้ เราจะได้รับวันสุดท้ายของเดือนหน้า - mysql> SELECT LAST_DAY(now() + INTERVAL 1 MONTH) AS 'LAST DAY OF NEXT MONTH'; +------------------------+ | LAST DAY OF NEXT MONTH | +------------------------+ | 2017-11-30 &
สมมติว่าเราเก็บค่าวันที่เป็น 0000-00-00 ในตาราง MySQL จากนั้นเมื่อแยกค่าปีจากวันที่ประเภทนั้น MySQL จะคืนค่า 0 มันจะไม่อยู่ใน Year(2) หรือ Year(4) รูปแบบ. เพื่อให้เข้าใจ เรากำลังใช้ข้อมูลต่อไปนี้จากตาราง detail_bday - mysql> Select * from detail_bday; +----+---------+------------+ | Sr | Name &nb
ค่าหน่วยต่างๆ ที่สามารถใช้กับคีย์เวิร์ด MySQL INTERVAL มีดังนี้ - ไมโครวินาที หน่วยนี้จะใช้สำหรับการเพิ่มหรือลบจำนวนไมโครวินาทีที่ระบุจากเวลาปัจจุบันหรือตามที่ผู้ใช้กำหนด mysql> Select NOW()+INTERVAL 100 MICROSECOND +--------------------------------+ | NOW()+INTERVAL 100 MICROSECOND | +--------