Django操作mysql数据库
前言
首先在pycharm中安装配置好django和mysqlclient一、Django配置mysql
使用之前先进行相关的配置1.创建数据库
我使用Navicat工具创建MySQL数据库agriculture
2.在setting.py里进行数据库的配置
主要是对配置项DATARASES进行修改
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', #将sqlsite3换为mysql
'NAME': 'agriculture',
'USER':'root',
'PASSWORD':'123456',
'HOST':'127.0.0.1',
'PORT':'3306',
}
}
二、使用ORM在数据库中建表
ORM(Object Relational Maping),对象关系映射模型示例:
1.添加一个app
在pycharm终端输入命令
添加完成
2.添加模型类并注册app
(1)注册app就是在setting.py中的INSTALLED_APPS配置项中添加应用名
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'agriculture', #注册agriculture的app
]
(2)添加模型类
使用内部Meta类来给模型赋予属性,Meta类下有很多内建的类属性,可对模型类做一些控制
代码示例:
from django.db import models
# Create your models here.
class User(models.Model):
useraccount = models.CharField('账号',max_length=50)
password = models.CharField('密码',max_length=50)
username = models.CharField('用户名',max_length=50)
phone = models.CharField('电话',max_length=20)
email = models.EmailField('邮箱')
class Meta:
db_table = 'User' #可改变当前模型类对应的表名
class City_cropinfo(models.Model):
city = models.CharField('城市',max_length=10)
year = models.CharField('年份',max_length=10)
crop_type = models.CharField('种类',max_length=10)
area = models.CharField('面积')
weight_all = models.FloatField('产量')
weight_avg = models.FloatField('单产')
class Meta:
db_table = 'City_cropinfo'
class City_climateinfo(models.Model):
city = models.CharField('城市', max_length=10)
year = models.CharField('年份', max_length=10)
month = models.IntegerField('月份')
temperature = models.FloatField('气温')
rain = models.FloatField('降水')
class Meta:
db_table = 'City_climateinfo'
class Market_info(models.Model):
market = models.CharField('市场',max_length=50)
actul_type = models.CharField('名称',max_length=20)
dim_type = models.CharField('类别',max_length=20)
price = models.FloatField('价格')
pyear = models.CharField('年份', max_length=10)
pmonth = models.IntegerField('月份')
day = models.IntegerField('日期')
class Meta:
db_table = 'Market'
3.数据库迁移
迁移是Django同步对模型所做更改(添加字段、删除模型等)到数据库模式的方式(1)生成迁移文件
执行命令
python manage.py makemigrations
在migrations文件夹下生成了迁移文件
(2)执行迁移脚本程序
执行命令
python manage.py migrate
可以看到终端中噼里啪啦一顿OK
在Navicat中查看数据库
建表完成,还多了一些其它的表,Django自带的表
总结
先不总结