MySQL與SQLite的遷移

來源:互聯網
上載者:User

標籤:

emily
連結:http://zhuanlan.zhihu.com/p/20778415
來源:知乎
著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。

從sqlite資料庫匯入到mysql資料庫執行個體

從sqllite中匯出資料檔案庫XX.sql的檔案。匯入到mysql資料庫中。

鍵入命令: source /smb/works/mysql.sql

出現很多如下的錯誤:

You have an error in your SQL syntax; check the manual thatcorresponds to your MariaDB server version for the right syntax to use near XXXXXXXXX

原因是sqllite與mysql語句有很大的區別:左邊為MYSQL、右邊為SQLite

1、啟動事務

Mysql 為start transaction

Sqlite 為 begin transaction

2、提交事務

Mysql 為commit

Sqlite 為commit transaction

3 建立表

Mysql的庫名、表名、列明等都不需要使用[ ],sqlite 所有的名稱都需要增加[ ]。

4、資料類型

sqlite的資料類型mysql都支援。但是sqlite中定義了範圍在mysql中匯入會報錯。只有varchar需要定義範圍。

5、衝突解決

SQLite 的 ONCONFLICT子句不是獨立的SQL命令。這是一條可以出現在許多其他SQL命令中的非標準的子句。在Mysql中不支援。

從mysql資料庫匯入到sqlite資料庫執行個體

第一步: mysql匯出.sql檔案

在終端中輸入
mysqldump -h localhost -u root -p mydb>e:\mysql\mydb.sql
然後輸入密碼,等待一會匯出就成功了,可以到目標檔案中檢查是否成功。

第二步:使用命令開啟資料庫db檔案。

在目前的目錄下建立資料庫檔案 test.db,若存在該資料庫檔案,則是開啟資料庫檔案。如果想從別人的db檔案上修改,也可以採用這樣的方式開啟其資料庫檔案,然後修改。匯入成功後出現所示:


第三步:使用dabatabse命令

可以庫main對應的資料庫檔案儲存路徑為第二步開啟的檔案。

第四步:修改資料庫

使用SQL語句對該資料庫進行操作。如果從別的庫遷移過來,使用庫匯出的sql檔案,用記事本開啟sql檔案,mysql與sqlite的sql語句有一些差別,在文檔《從sqlite資料庫匯入到mysql資料庫》一文中已有標書。

若需要對資料庫的表進行建立、資料結構進行調整都可以在.sql檔案中進行修改完後,使用read命令讀入sql檔案。 如果有錯,則返回錯誤資訊。 如果正確,就直接返回了。

第五步:確認是否修改成功

使用headers on命令,開啟表開關,然後sql語句select查閱表,看錶中的內容是否已經修改成功。

sqlite3 的命令需要通過“.XXX”的形式調用。調用命令前需要加”.”。

sql語句需要“XXXXXXXXXX;”的形式調用。語句結束後需要加“;”

sqlite的命令集合:

mysql的命令集合


MySQL與SQLite的遷移

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.