欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

關于MySQL中savepoint語句使用時所出現(xiàn)的錯誤

 更新時間:2015年05月08日 11:27:46   投稿:goldensun  
這篇文章主要介紹了關于MySQL中savepoint語句使用時所出現(xiàn)的錯誤,字符串出現(xiàn)e時所產(chǎn)生的問題也被作為MySQL的bug進行過提交,需要的朋友可以參考下

前幾天幫同事解決一個案例,在主從復制環(huán)境下,從庫上的MySQL版本號是5.5.5,遇到下面的錯誤:

#其他非相關信息我都隱藏掉了
 [(yejr@imysql.com)]> show slave status \G;
 Slave_IO_Running: Yes
 Slave_SQL_Running: No
 Last_Errno: 1064
 Last_Error: Error 'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '6e86db84_14847168f19__8000' at line 1' on query. Default database: 'act'. Query: 'SAVEPOINT 6e86db84_14847168f19__8000'
 Last_IO_Errno: 0
 Last_IO_Error:
 Last_SQL_Errno: 1064
 Last_SQL_Error: Error 'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '6e86db84_14847168f19__8000' at line 1' on query. Default database: 'act_log'. Query: 'SAVEPOINT 6e86db84_14847168f19__8000'

第一感覺是遇到保留關鍵字了,不過看到這么長的字符串,不應該是保留關鍵字才對。
經(jīng)過嘗試,最后發(fā)現(xiàn)是字符串中的 “e” 這個字符如果存在就可能會報錯,看起來應該是bug才對了。
在MySQL的bug系統(tǒng)里確實找到了這個bug,不過看bug描述,在5.5版本中應該是已經(jīng)修復了才對,看來太不靠譜了呀~~
關于這個bug:Savepoint identifier is occasionally considered as floating point numbers

其實除了升級版本外,解決方法也很簡單,把savepoint后面的 identifier 字符串用反引號(波浪號的下檔鍵,英文叫做 backticks 鍵)引用起來就行。
例如:

savepoint `6e86db84_14847168f19__8000`;

這樣就可以了。

這個案例也提示我們,在寫SQL時,涉及到數(shù)據(jù)庫、表、字段、identifier 等名稱時,最好是都能用反引號引用,確??捎?。
曾經(jīng)看到線上數(shù)據(jù)表有個字段名是 check ,這個名字在MySQL里很早就已經(jīng)是保留關鍵字,幸好開發(fā)同學比較靠譜,都加上了反引號。

關于savepoint的2個bug:
Savepoint Identifier should be enclosed with backticks
Savepoint identifier is occasionally considered as floating point numbers

相關文章

  • mysql使用自定義序列實現(xiàn)row_number功能(步驟詳解)

    mysql使用自定義序列實現(xiàn)row_number功能(步驟詳解)

    這篇文章主要介紹了mysql使用自定義序列實現(xiàn)row_number功能,本文分步驟通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2021-12-12
  • navicat不能創(chuàng)建函數(shù)解決方法分享

    navicat不能創(chuàng)建函數(shù)解決方法分享

    這篇文章主要介紹了navicat不能創(chuàng)建函數(shù)解決方法分享,小編覺得還是挺不錯的,這里分享給大家,供需要的朋友參考。
    2017-10-10
  • 一文帶你了解MySQL基于規(guī)則的優(yōu)化

    一文帶你了解MySQL基于規(guī)則的優(yōu)化

    MySQL依據(jù)一些規(guī)則,竭盡全力的把這些很糟糕的語句轉換成某種可以比較高效執(zhí)行的形式,這個過程也可以被稱作查詢重寫,本章主要就是詳細講解下這些比較重要的重寫規(guī)則,感興趣的小伙伴可跟著小編一起來學習
    2023-05-05
  • 淺析MySQL 備份與恢復

    淺析MySQL 備份與恢復

    這篇文章主要介紹了MySQL 備份與恢復的相關資料,幫助大家更好的理解和學習MySQL,感興趣的朋友可以了解下
    2020-08-08
  • Mysql索引的類型和優(yōu)缺點詳解

    Mysql索引的類型和優(yōu)缺點詳解

    這篇文章主要為大家詳細介紹了Mysql索引的類型和優(yōu)缺點,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • 談談MySQL中的隱式轉換

    談談MySQL中的隱式轉換

    這篇文章主要介紹了MySQL中的隱式轉換的相關資料,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下
    2020-10-10
  • MySQL報錯?:Error?writing?file?‘/tmp/XXXX‘?(Errcode:?28?-?No?space?left?on?device)的解決方法

    MySQL報錯?:Error?writing?file?‘/tmp/XXXX‘?(Errcode:?28?

    這篇文章主要給大家介紹了MySQL報錯解決:Error?writing?file?‘/tmp/XXXX‘?(Errcode:?28?-?No?space?left?on?device),文中通過代碼示例和圖文介紹的非常詳細,需要的朋友可以參考下
    2023-10-10
  • PHP MYSQL注入攻擊需要預防7個要點

    PHP MYSQL注入攻擊需要預防7個要點

    這篇文章主要介紹了PHP MYSQL開發(fā)中,對于注入攻擊需要預防的7個要點,大家需要注意了
    2013-11-11
  • 推薦幾款MySQL相關工具

    推薦幾款MySQL相關工具

    這篇文章主要介紹了幾款MySQL相關工具的相關資料,幫助大家更好的使用和維護MySQL 數(shù)據(jù)庫,感興趣的朋友可以了解下
    2020-11-11
  • Mysql查看數(shù)據(jù)庫時區(qū)并設置時區(qū)的方法

    Mysql查看數(shù)據(jù)庫時區(qū)并設置時區(qū)的方法

    這篇文章主要介紹了Mysql查看數(shù)據(jù)庫時區(qū)并設置時區(qū)的方法,設置時區(qū)的方式可以通過mysql命令行模式下動態(tài)修改以及通過修改配置文件來修改時區(qū),需要的朋友可以參考下
    2024-02-02

最新評論