django连接已经存在数据的数据库

你有没有遇到过这种情况?

数据库,各种表结构已经创建好了,甚至连数据都有了,此时,我要用Django管理这个数据库,ORM映射怎么办???

Django是最适合所谓的green-field开发,即从头开始一个新的项目

但是呢,Django也支持和以前遗留的数据库和应用相结合的。

Django的数据库层从Python代码生成SQL schemas。但是对于遗留的数据库,你已经用于SQL schemas,这种情况下你需要为你已经存在的数据库表写模型(为了使用数据库的API),幸运的是,Django自带有通过阅读你的数据库表规划来生成模型代码的辅助工具 manage.py inspectdb

1.Django默认使用的是sqllit数据库?如何使用MySQL数据库?

#修改setting.py文件

DATABASE = {
    ‘default‘:{
        ‘ENGINE‘:‘django.db.backends.mysql‘,
        ‘NAME‘:‘数据库名‘,
        ‘HOST‘:‘数据库地址‘,
        ‘PORT‘:端口,
        ‘USER‘:‘用户名‘,
        ‘PASSWORD‘:‘密码‘,
    }
}

#由于Django内部链接MySQL数据库的时候默认的是使用MySQLdb的
#但是Python3中没有这个模块
#所以我们要去修改他的project同名文件夹下的__init__文件

import pymysql
pymysql.install_as_MySQLdb()

然后呢,我们就需要根据数据库去自动生成新的models文件

python manage.py inspectdb    #简单可以看一下自动映射成的models中的内容

导出并且去代替models.py

python manage.py inspectdb > models.py

这样你就会发现在manage.py的同级目录下生成了一个models.py文件

使用这个models.py文件覆盖app中的models文件。

如果完成了以上的操作,生成的是一个不可修改/删除的models,修改meta class中的managed = True则可以去告诉django可以对数据库进行操作

此时,我们再去使models.py和数据库进行同步

python manage.py migrate

这个时候就已经大功告成了!

原文地址:https://www.cnblogs.com/fengkun125/p/10490869.html

时间: 2024-10-08 23:03:47

django连接已经存在数据的数据库的相关文章

Django连接数据mysql

[背景] 系统centos6.x python 版本 3.4.3 django 1.9.x 默认django使用的数据库是sqlite3, 而我们常用的是mysql 我们需要连接mysql此时是需要django连接mysql的驱动,默认是MySQLdb,但是这个是很难下载安装的,在centos环境是pip是无法安装 所以需要使用pymysql 进行取代(安装来自包PyMySQL) [开始进行代替默认的MySQLdb工具的步骤] 1 在项目下的app目录下 加入使用pymsql作为MySQLdb

用django将数据从数据库提出并分页展示

不要笑这个太简单噢~~大神们路过的请自动忽略本文-- 要把数据提出并展示出来~效果如下: 1.需要建立一个project噢~ project中要包含一个展示的html页面和一个"后台"的Python页面.为了把.html和.py文件区分开,所以在project的文件夹下要建立一个templates文件夹来存放html文件.建好的project如下: 2.打开test.py进行编辑. 1)首先,要连接数据库,其中的MySQLdb需要自行下载安装,它是python连接mysql数据库所必不

一步一步跟我学习hadoop(7)----hadoop连接mysql数据库运行数据读写数据库操作

为了方便 MapReduce 直接訪问关系型数据库(Mysql,Oracle).Hadoop提供了DBInputFormat和DBOutputFormat两个类.通过DBInputFormat类把数据库表数据读入到HDFS,依据DBOutputFormat类把MapReduce产生的结果集导入到数据库表中. 执行MapReduce时候报错:java.io.IOException: com.mysql.jdbc.Driver,通常是因为程序找不到mysql驱动包.解决方法是让每一个tasktrac

sharepoint 2013 打开rdl报表,报表服务器数据库内出错。此错误可能是因连接失败、超时或数据库中磁盘空间不足而导致的

 最近在做reporting services报表的时候,部署到sharepoint后,打开rdl报表,经常遇到一个问题: 报表服务器数据库内出错.此错误可能是因连接失败.超时或数据库中磁盘空间不足而导致的. ---> Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerStorageException: 报表服务器数据库内出错.此错误可能是因连接失败.超时或数据库中磁盘空间不足而导致的. ---> System.Da

一步一步跟我学习hadoop(7)----hadoop连接mysql数据库执行数据读写数据库操作

为了方便 MapReduce 直接访问关系型数据库(Mysql,Oracle),Hadoop提供了DBInputFormat和DBOutputFormat两个类.通过DBInputFormat类把数据库表数据读入到HDFS,根据DBOutputFormat类把MapReduce产生的结果集导入到数据库表中. 运行MapReduce时候报错:java.io.IOException: com.mysql.jdbc.Driver,一般是由于程序找不到mysql驱动包.解决方法是让每个tasktrack

Django——连接sql server数据库

Django——连接sql server数据库 *在此注明,本人使用的是python3.5和Django2.0.4 sql server是微软出的一款闭源的可运行于windows和linux平台上的关系型数据库.由于其闭源的特性,所以较少有公司使用,但是比较神奇的是,我所在的公司和我几个朋友所在的公司业务都是以爬虫为主,都是以sql server作为主要的数据库在使用. 一.打包 如果你是使用Django的老手应该知道Django默认不支持sql server:如果你刚开始接触Django,那么

使用Django创建一个后端是SQLSERVER的简单系统(一)Django连接SQLServer数据库

window环境下Django连接SQLSERVER, 1.创建项目: 2.创建application: 3.使用pycharm打开项目,如下图: 4.配置虚拟环境: 安装Django\pyodbc\django-pyodbc-azure,如下图: 5.在配置环境中配置连接字符: 6.在配置环境中安装app,设置templates路径: 7.定义一个类: 8.make migrations: 9.migrate: 10.我们看一下数据库: 11. 表已经建好了,接下来我们写一个管理系统. 原文地

配置django连接ORCALE数据库

Django安装.配置流程 预备过程: 安装Python以及pip(对于目前新版本的Python,安装过程中会自带pip安装) Django安装过程: Step1:利用pip安装django. 在命令行执行如下命令: pip install django Step2:进入准备新建django项目的目录 执行如下命令创建一个项目: django-admin.py startproject mysite 其中,mysite表示项目名称. Step3:进入外层mysite文件夹内,执行如下命令并测试服

四 Django框架,models.py模块,数据库操作——创建表、数据类型、索引、admin后台,补充Django目录说明以及全局配置文件配置

Django框架,models.py模块,数据库操作--创建表.数据类型.索引.admin后台,补充Django目录说明以及全局配置文件配置 数据库配置 django默认支持sqlite,mysql, oracle,postgresql数据库. 1,django默认使用sqlite的数据库,默认自带sqlite的数据库驱动   引擎名称:django.db.backends.sqlite3 在全局配置文件settings.py可以看到确认配置使用的sqlite数据库 # Database # h