MySQL語句結(jié)束符指的是在執(zhí)行多條SQL語句時,需要告訴MySQL每一條SQL語句已經(jīng)結(jié)束的符號。默認情況下,MySQL使用分號作為SQL語句結(jié)束符。
SELECT * FROM table1; UPDATE table2 SET field1='value1' WHERE field2='value2'; INSERT INTO table3 (field1, field2) VALUES ('value1', 'value2');
以上是三條SQL語句,每一條都以分號作為結(jié)束符。對于大多數(shù)情況來說,這是一個方便、快捷的方式。但是,當(dāng)某個SQL語句本身就包含分號時,就會產(chǎn)生問題。
為了解決這個問題,MySQL提供了命令來改變SQL語句結(jié)束符。使用命令DELIMITER可以指定新的結(jié)束符。例如,我們想將新的結(jié)束符設(shè)置為“#”:
DELIMITER # SELECT * FROM table1 # UPDATE table2 SET field1='value1' WHERE field2='value2' # INSERT INTO table3 (field1, field2) VALUES ('value1', 'value2') # DELIMITER ;
以上是同樣的三條SQL語句,但是我們使用了“#”作為結(jié)束符。注意,我們需要在最后使用DELIMITER將結(jié)束符改回分號,以免影響后續(xù)SQL語句的執(zhí)行。
總之,MySQL語句結(jié)束符雖然默認為分號,但是使用DELIMITER命令可以很方便地更改結(jié)束符。