django 之数据库小记

数据库生成对应models

python mysite/manage.py inspectdb > mysite/myapp/models.py

新建项目

django-admin.py startproject learn_models # 新建一个项目
cd learn_models # 进入到该项目的文件夹
django-admin.py startapp people # 新建一个 people 应用(app)

数据库与models关联

django 默认使用的sqllite,如果要在项目中使用mysql,需要安装新的模块,比如mysqlclient,或者pymysql,貌似mac上使用mysqlclient会方便很多
1. models生成数据库,不同版本的会有不同的指令,当然建议使用高版本,有些从models的改变没法自动生成数据库文件的,在系版本django中有一些不同

先 cd 进入 manage.py 所在的那个文件夹下,输入下面的命令

## Django 1.6.x 及以下
python manage.py syncdb

## Django 1.7 及以上的版本需要用以下命令
python manage.py makemigrations
python manage.py migrate
python manage.py migrate --run-syncdb
  1. 数据库生成model
    • 配置数据库
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', 
        'NAME': 'mydb',                     
        'USER': 'root',                
        'PASSWORD': 'password', 
        'HOST': '127.0.0.1',
        'PORT': '3306', 
    }
}
  1. 数据库创建models
    比如重定向到一个models.py的文件中

    python manage.py inspectdb > mysite/myapp/models.py

  2. 数据库的编码问题:

在mysql中存在着各种utf8编码格式,如下表:

        1)utf8_bin

        2)utf8_general_ci

        3)utf8_general_cs

        utf8_bin将字符串中的每一个字符用二进制数据存储,区分大小写。

        utf8_genera_ci不区分大小写,ci为case insensitive的缩写,即大小写不敏感。

        utf8_general_cs区分大小写,cs为case sensitive的缩写,即大小写敏感

更多文献:hxf.space

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值