Django基础(三)-models

一、数据库的配置

1)django默认支持sqlite,mysql, oracle,postgresql数据库。

  • sqlite:django默认使用sqlite的数据库,默认自带sqlite的数据库驱动 , 引擎名称:django.db.backends.sqlite3
  • mysql:引擎名称:django.db.backends.mysql

2)mysql驱动程序

  • MySQLdb(mysql python)
  • mysqlclient
  • MySQL
  • PyMySQL(纯python的mysql驱动程序)

3)在django的项目中会默认使用sqlite数据库,在settings里有如下设置:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

如果我们想要更改数据库如mysql,需要修改如下:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'Django_ORM',    #你的数据库名称
        'USER': 'root',   #你的数据库用户名
        'PASSWORD': 'mysql', #你的数据库密码
        'HOST': '10.0.0.12', #你的数据库主机,留空默认为localhost
        'PORT': '3306', #你的数据库端口
    }
}

注意:

#NAME即数据库的名字,在mysql连接前该数据库必须已经创建,而上面的sqlite数据库下的db.sqlite3则是项目自动创建
#USER和PASSWORD分别是数据库的用户名和密码。
#设置完后,再启动我们的Django项目前,我们需要激活我们的mysql。然后,启动项目,会报错:no module named MySQLdb
#这是因为django默认你导入的驱动是MySQLdb,可是MySQLdb对于py3有很大问题,所以我们需要的驱动是PyMySQL
#所以,我们只需要找到项目名文件下的__init__,在里面写入:

import pymysql
pymysql.install_as_MySQLdb()

#其他报错
https://blog.csdn.net/lijing742180/article/details/91966031

猜你喜欢

转载自www.cnblogs.com/hujinzhong/p/11580595.html
今日推荐