亚洲a√-youjizzxxxxx-av一道本-欧洲av在线播放-奇米影视777四色-av成人天堂-色婷婷777777仙踪林-日韩在线观看免费网站-亚洲天堂视频一区-亚洲精品极品-91丝袜呻吟高潮美腿白嫩

首頁 > 新聞 > 知識賦能

網站數據從ORACLE遷移到MYSQL教程

2012-05-24 6614
分享至:
網站制作(www.5e3.com.cn)整體改版升級,因為想要降低網站運行成本,考慮變更數據庫,由原來的企業級數據庫ORACLE變更為較為小型的MYSQL,數據庫的變更中的一個重要過程就是網站的數據遷移。在數據遷移過程中遇到一些問題并花了較長的時間解決,今天就分析總結下網站的后臺數據庫構建中需要注意的問題。

1、不同數據庫的個別數據類型定義不同

在數據庫變更的測試過程中,發現網站以往的文章詳情頁面的文章發表時間顯示有問題,非正常格式的年—月—日時:分的樣式。

經過頁面調取文件代碼、數據庫記錄等內容的檢查后,發現是由于ORACLE中對時間的定義類型只有Date一種,而這種定義類型的格式包括年月日和時間;而在MYSQL中對時間的定義類型包含Date、Time、Datetime三種,在MYSQL中對于Date類型的定義僅僅包含年月日而不包含時間。

要解決這個問題,只能把MYSQL數據庫表中創建的字段類型由原來的Date改為Datetime,再重新進行這類數據的導入。

小結:不同的數據庫對具體類型定義不同,因此在完成新數據庫表結構構件后,最好進行少量數據記錄條遷移進行數據測試,能夠及時發現問題所在并進行數據類型修改,再進行全部數據的遷移,以免造成數據重復導入,增加工作量。

2、不同數據庫對大小寫區分不同

在數據庫遷移測試過程中,發現通過網站后臺管理系統增加的文章出現異常情況,會出現報錯信息。通過調取數據庫的文章SiteArticle表的記錄發現新文章對應的記錄條未能正常插入。

通過代碼測試檢查發現,是由于網頁文件的代碼對于數據庫的操作的表名字大小寫不一致造成的,ORACLE數據庫具有較好的包容度,支持網頁文件關于insert into Sitearticle()代碼對于SiteArticle表的插入新記錄操作;而MYSQL數據庫對大小寫敏感,只支持insert into SiteArticle()代碼對于SiteArticle表的插入新記錄操作。

要解決這個問題,只能仔細查看網頁文件源碼,更改對數據庫操作的所有語句的數據庫名、表名、字段名等的字符大小寫,保持與數據庫中創建名稱的大小寫一致。

小結:從兼容性角度考慮,在網站建設的時候就規范數據庫操作相關代碼中的大小寫問題,在今后更換數據庫或升級數據庫的過程中,就不必擔心大小寫敏感度問題,也減少許多更改代碼工作量。

3、不同數據庫對保留字的要求不同

在數據庫遷移過程中,發現在統一了大小寫問題后,提交文章時候關鍵字標簽的記錄插入依舊失敗,報錯信息提示為語法錯誤。

經過排查,發現是保留字在搗鬼。在ORACLE數據庫中對保留字的態度是較為寬容的,可以表名和字段名稱均可以使用保留字;而MYSQL數據庫規定保留字是不可以作為表名和字段名的。在網站的數據庫Sitearticle表中的其中一個字段名為show,屬于保留字,因此同樣建立在MYSQL數據庫后,插入新記錄報語法錯誤。

解決這個問題,需要在網頁代碼中將代碼語句中的關于Sitearticle表的show字段名用``符號(即1按鍵前面的按鍵輸入的符號)引起來以區別。

小結:不同數據庫對保留字的要求不同,所以在網站數據庫建設的時候不論當前數據庫類型版本是否支持,盡量不用保留字作為字段名和表名,以保障后期數據庫版本的升級和替換后運行正常。
本文發布于北京網站制作公司尚品中國http://www.5e3.com.cn/
來源聲明:

本文章系尚品中國編輯原創或采編整理,如需轉載請注明來自尚品中國。以上內容部分(包含圖片、文字)來源于網絡,如有侵權,請及時與本站聯系(010-60259772)。

立即預約專屬顧問 開啟數字化轉型之旅!

10年+資深項目經理1V1服務 | 行業定制化方案 | 精準報價體系
獲取策劃方案
立即預約專屬顧問 開啟數字化轉型之旅!

咨詢我們,獲得專業的服務和報價

聯系我們,免費獲取項目方案及報價,或只是聊一聊您的項目? 在收到您的需求留言后我們將由專業人員于24小時內與您取得聯系,請您保持電話暢通!

  • 科研院所解決方案
  • 外貿出海解決方案
  • 協會學會解決方案
  • 集團上市公司解決方案
  • 生物醫藥解決方案
  • 制造業解決方案
  • 高校教育解決方案
  • 信創網站改造解決方案
更多服務咨詢,請聯系尚品

010-60259772

您的姓名 *
您的電話 *
您的郵箱
公司名稱 *