MySQL5.7的sql腳本導入到MySQL5.5出錯解決


今晚有人讓我將他的數據庫導入到我的mysql里,執行導入后發現有報錯

想了下可能是版本的問題,詢問了下,他的數據庫是5.7而我的是5.5

他給我提議升級mysql版本,但是我就是不想換版本

那怎么在不更換數據庫版本的情況下成功導入數據呢?

按照下面方式進行全文替換

datetime(3)   ===>datetime

datetime(0)   ===>datetime

TIMESTAMP(3) ===>TIMESTAMP

DEFAULT CURRENT_TIMESTAMP  ===>DEFAULT '0000-00-00 00:00:00'

DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ===>DEFAULT '0000-00-00 00:00:00'

DEFAULT CURRENT_TIMESTAMP(3)  ON UPDATE CURRENT_TIMESTAMP(3) ===>DEFAULT '0000-00-00 00:00:00'

DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP ===>DEFAULT '0000-00-00 00:00:00'

都替換后重新運行sql,導入成功了

注:

  從MySQL 5.6.5開始,TIMESTAMP和DATETIME列可以自動初始化並更新為當前日期和時間(即CURRENT_TIMESTAMP)

  在5.6.5之前,這僅適用於TIMESTAMP,並且每個表最多只有一個TIMESTAMP列

 請參考MySql官網文檔5.6版本,5.7版本

https://dev.mysql.com/doc/refman/5.6/en/timestamp-initialization.html

https://dev.mysql.com/doc/refman/5.7/en/datetime.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM