码迷,mamicode.com
首页 > 数据库 > 详细

Django连接与建立数据库

时间:2020-01-23 21:23:24      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:float   mysq   图片   port   create   backend   tab   prim   unsigned   

连接MySQL数据库

配置文件

找到DATABASES对应的设置,修改为MySQL的配置即可

技术图片

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME':'bms',           # 要连接的数据库,连接前需要创建好
        'USER':'root',        # 连接数据库的用户名
        'PASSWORD':'',        # 连接数据库的密码
        'HOST':'127.0.0.1',       # 连接主机,默认本级
        'PORT':3306            #  端口 默认3306
    }
}

连接数据库

在项目的__init__.py文件中进行编辑.

用于告诉django使用pymysql模块代替MySQLdb模块。

import pymysql
pymysql.install_as_MySQLdb()

技术图片

创建数据库

建立模型

创建完项目后,我们进入app,进入models.py创建我们的模型(数据库

class UserInfo(models.Model):
    # create table userinfo(id int primary key auto_increment,name varchar(16),age int,current_date date)
    id = models.AutoField(primary_key=True)#自增字段 且主键
    name = models.CharField(max_length=16)
    age = models.IntegerField()#整数
    current_date = models.DateField()

技术图片

数据库同步指令

如果没有修改django默认数据库连接,那么会自动生产一个sqlite3的数据库。

第一个指令,创建一个记录。用于告诉django我要创建一个表

python manage.py makemigrations

技术图片

第二个指令,用于执行这个记录。

python manage.py migrate

ORM字段与数据库对应关系

'AutoField': 'integer AUTO_INCREMENT',
'BigAutoField': 'bigint AUTO_INCREMENT',
'BinaryField': 'longblob',
'BooleanField': 'bool',
'CharField': 'varchar(%(max_length)s)',
'CommaSeparatedIntegerField': 'varchar(%(max_length)s)',
'DateField': 'date',
'DateTimeField': 'datetime',
'DecimalField': 'numeric(%(max_digits)s, %(decimal_places)s)',
'DurationField': 'bigint',
'FileField': 'varchar(%(max_length)s)',
'FilePathField': 'varchar(%(max_length)s)',
'FloatField': 'double precision',
'IntegerField': 'integer',
'BigIntegerField': 'bigint',
'IPAddressField': 'char(15)',
'GenericIPAddressField': 'char(39)',
'NullBooleanField': 'bool',
'OneToOneField': 'integer',
'PositiveIntegerField': 'integer UNSIGNED',
'PositiveSmallIntegerField': 'smallint UNSIGNED',
'SlugField': 'varchar(%(max_length)s)',
'SmallIntegerField': 'smallint',
'TextField': 'longtext',
'TimeField': 'time',
'UUIDField': 'char(32)',

Django连接与建立数据库

标签:float   mysq   图片   port   create   backend   tab   prim   unsigned   

原文地址:https://www.cnblogs.com/antmoe/p/12231253.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!