在進行 MySQL 數據庫操作時,經常會遇到轉義字符串這樣的需求。MySQL 提供了多種轉義函數,例如quote()
、real_escape_string()
等。下面就來具體介紹這些函數的用法。
如果使用了單引號或雙引號表示的字符串,當字符串中包含 SQL 語句所使用的特殊字符時,就必須進行轉義。特殊字符包括單引號、雙引號、反斜杠等。下面就演示一個例子:
INSERT INTO `users` SET `name`='John O'Connor'
上面的 SQL 語句中,字符串中包含了單引號,因此需要進行轉義。轉義后的 SQL 語句如下:
INSERT INTO `users` SET `name`='John O\'Connor'
其中,\'
表示單引號進行了轉義。
如果需要批量轉義字符串,MySQL 提供了quote()
函數。使用該函數時,必須把字符串包含在單引號或雙引號中。如下所示:
$name = "John O'Connor"; $name_escaped = $mysqli->quote($name); $sql = "INSERT INTO `users` SET `name`=$name_escaped";
上面的代碼段中,使用了雙引號包含字符串,并使用了quote()
函數進行轉義。
除了quote()
外,MySQL 還提供了real_escape_string()
函數進行轉義。使用該函數時,只需要傳入需要轉義的字符串即可。如下所示:
$name = "John O'Connor"; $name_escaped = $mysqli->real_escape_string($name); $sql = "INSERT INTO `users` SET `name`='$name_escaped'";
上面的代碼段中,使用了單引號包含字符串,并使用了real_escape_string()
函數進行轉義。
總的來說,轉義字符串是 MySQL 數據庫操作中的一項基本技能,必須掌握。MySQL 提供了多種轉義函數,根據實際情況進行選擇即可。
上一篇mysql 轉化json
下一篇css邊框點狀線樣式