• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Django平臺對原有數據庫遷移與整合的技術研究

      2022-07-06 13:26:04陳軍民
      客聯 2022年9期
      關鍵詞:數據整合信息化建設

      陳軍民

      摘 要:高校信息化建設發(fā)展迅速,學校的業(yè)務部門根據各自的業(yè)務需求建立了很多信息管理系統。但由于沒有統一規(guī)劃,不可避免地出現了“信息孤島”。本文針對高校信息化建設過程中,對不同數據庫進行遷移與整合,建立統一的數據中心和網站應用的相關技術問題進行論述。

      關鍵詞:信息化建設;數據遷移;數據整合

      一個單位在不同時段根據當時的工作需要,會建立各種不同的信息管理系統。由于歷史的原因,這些系統的數據庫平臺不盡相同。如何對這些數據庫進行遷移與整合,建立統一的數據中心和網站應用,這是一個單位信息化建設過程中必定會遇到且必須要解決的問題。本文以Django平臺為例,介紹對原有不同數據庫遷移和整合的技術問題。

      一、Django平臺連接多種不同的數據庫

      Django平臺提供了非常便捷的方式連接各種不同的數據庫。以某高校為例,教務管理系統應用的是MySQL數據庫,智慧校園使用的是SQLite3的數據庫。Django平臺要同時連接這兩種數據庫,只要在setting.py文件中進行設置。

      1、連接教務管理系統的MySQL數據庫

      DATABASES = {

      'jwxt': {

      'ENGINE': 'django.db.backends.mysql',

      'NAME': 'jwxt',

      'USER': ‘root,

      'PASSWORD': ‘test123,

      'HOST':192.168.0.10,

      'PORT':3306,

      }

      }

      其中,'jwxt'為Django平臺連接教務管理系統數據庫的連接名,'ENGINE':為連接mysql數據庫的引擎,NAME為教務管理系統的數據庫名稱,USER為訪問數據庫的用戶名,PASSWORD為訪問數據庫的密碼,HOST為數據庫服務器的IP地址,PORT為數據庫服務器的端口。注意,上述數據為測試數據,在具體實踐中應將這些數據設置為實際數據。

      另外,Django平臺訪問MySQL,還需要安裝包pymysql,并在與 settings.py 同級目錄下的 init.py 中引入模塊和進行配置,代碼如下:

      import pymysql

      pymysql.install_as_MySQLdb()

      2、連接智慧校園的SQLite3的數據庫

      DATABASES = {

      'zhxy': {

      'ENGINE': 'django.db.backends.sqlite3',

      'NAME':‘192.168.0.11/DB/db.sqlite3,

      }

      }

      其中,zhxy是Django平臺連接智慧校園的數據庫連接名,ENGINE是連接SQLite3數據庫的連接引擎。NAME是Django平臺連接智慧校園的數據庫文件路徑,需要對方電腦提供共享。

      二、Django平臺對原有數據庫進行轉換與遷移

      Django平臺提供了對數據庫統一管理的后臺,但有一個前提,那就是需要將原有的數據庫轉換為模型數據庫。而要使用模型,首先要建一個APP,且在設置文件中注冊這個App。

      1、建立與注冊App

      首先執(zhí)行:django-admin startapp DBApp ,建立DBApp,然后在settings.py中,找到INSTALLED_APPS,注冊DBApp。注冊代碼如下:

      INSTALLED_APPS = [

      'django.contrib.admin',

      'django.contrib.auth',

      'django.contrib.contenttypes',

      'django.contrib.sessions',

      'django.contrib.messages',

      'django.contrib.staticfiles',

      'DBApp',

      ]

      2、對原有數據庫進行轉換

      原有的數據庫是關系數據庫,需要將其轉換為模型數據庫。首先執(zhí)行命令:Python manage.py? inspectdb>ORM.txt,然后打開ORM.txt文件,就能得到模型數據庫。

      下面以MySQL的學生表為例。原有學生表的結構為:

      CREATE TABLE `xs`? (

      `學號` char(6) NOT NULL,

      `姓名` char(8) NOT NULL,

      `專業(yè)名` char(10)? NULL DEFAULT NULL,

      `性別` tinyint(1) NOT NULL DEFAULT 1 ,

      `出生時間` date NOT NULL,

      `總學分` tinyint(1) NULL DEFAULT NULL,

      `照片` blob NULL,

      `備注` text NULL,

      PRIMARY KEY (`學號`)

      );

      執(zhí)行命令:python manage.py inspectdb xs>DBApp/models.py,打開models.py,可以看到以下模型代碼:

      class Xs(models.Model):

      學號 = models.CharField(primary_key=True, max_length=6)

      姓名 = models.CharField(max_length=8)

      專業(yè)名 = models.CharField(max_length=10, blank=True, null=True)

      性別 = models.TextField()? # This field type is a guess.

      出生時間 = models.DateField()

      總學分 = models.TextField(blank=True, null=True)? # This field type is a guess.

      照片 = models.BinaryField(blank=True, null=True)

      備注 = models.TextField(blank=True, null=True)

      class Meta:

      managed = False

      db_table = 'xs'

      注意,要管理這個數據表,需要將managed = False 改為managed = True。還有轉換后的一些字段,不一定準確,后面出現:This field type is a guess,都需要人工檢查,不符合要求的應進行修改。

      最后執(zhí)行:python manage.py migrate,對數據庫的數據進行同步遷移。

      三、Django平臺的后臺對數據庫統一管理

      Django平臺提供了現成的后臺對數據庫統一管理,可以對現有的模型數據庫進行增刪改查。但要應用這些功能,首先應創(chuàng)建一個超級用戶,然后再注冊模型。

      1、搶建一個超級用戶

      執(zhí)行命令:python manage.py createsuperuser,設置用戶名,密碼和電子郵箱。

      2、在DBApp.py文件中注冊模型

      From DBApp.models import Xs

      Admin.site.register(Xs)

      3、登錄網站后臺

      執(zhí)行命令 python manage.py runserver,在瀏覽器地址欄中輸入:127.0.0.1/admin,輸入超級用戶名和密碼,就可以進入網站后臺對數據庫進行管理。

      參考文獻:

      [1]百度文庫. https://wenku.baidu.com/view/f6f94f35a11614791711cc7931b765

      ce05087abf.html_wkts_=1667285188879[OL].2021年3月

      [2]錢彬. Python Web開發(fā)從入門到實踐[M].清華大學出版社, 2020年7月

      猜你喜歡
      數據整合信息化建設
      淺談電力大數據平臺關鍵技術研究與應用
      高等院校實驗中心共享教學資源庫建設研究與設計
      關于新時期高校檔案管理信息化建設的幾點思考
      數字化校園的整體構架及技術分析
      事業(yè)單位人事管理信息化建設策略研究
      時代金融(2016年23期)2016-10-31 13:19:12
      公立醫(yī)院財務管理信息化建設研究
      關于現階段工程造價管理信息化建設的思考
      企業(yè)財務管理信息化建設研究
      中國市場(2016年36期)2016-10-19 04:24:57
      數據整合在宏觀經濟監(jiān)測預測系統中的實現
      基于數據挖掘的網絡營銷系統研究
      泰州市| 宿松县| 文水县| 英德市| 昌平区| 拜城县| 房山区| 四川省| 左云县| 金堂县| 泗洪县| 弋阳县| 依兰县| 离岛区| 凤冈县| 厦门市| 南开区| 疏附县| 施甸县| 夏津县| 自贡市| 中阳县| 即墨市| 探索| 宜都市| 微山县| 固阳县| 鹰潭市| 阳西县| 中牟县| 丹凤县| 施甸县| 班戈县| 晋江市| 永吉县| 阜南县| 霍山县| 丰顺县| 驻马店市| 齐河县| 普兰店市|