先在Django中找到配置数据库的信息,在setting下找到database进行修改
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', #链接的数据库类型
'HOST':'127.0.0.1',#连接数据库的地址
'PORT':'3306', #端口号
'NAME':'testingshare', #数据库名称
'USER':'root', #用户
'PASSWORD':'123456' #密码
}
}
这是对django进行数据库配置,但不能直接连接到mysql,需要通过第三方模块pymysql进行连接
在项目下的setting同级的init文件写入
import pymysql
# 告诉django使用pymysql代替MySQLdb
pymysql.install_as_MySQLdb()
之后就可以通过django来创建表了
在app下models.py里编写创建数据库表操作
每一个类对应一张表,对象对应字段
class UserInfo(models.Model): #创建的类必须继承models.Model
id = models.AutoField(primary_key=True) #AutoField()代表自增字段值,标示每次插入数据都会自动+1,primary_key 代表主键
name = models.CharField(null=False,max_length=20,unique=True) # 创建一个varchar类型的不能,null=False表示不能为空,max_length添加内容的长度最大多少字符,unique=True 表示不能重复
执行命令将代码创建成数据库表
python manage.py makemigrations
python manage.py migrate
查询:
models.UserInfo.objects.all() #查找表中所有内容,已列表的形式返回数据对象
新增:
models.UserInfo.objects.create(name="hh",password=1111111)
删除:
models.UserInfo.objects.get(name='hh').delete()
修改:
user = models.UserInfo.objects.get(name='hh')
user.name = 'zz'
user.save()
外键:
publisher_id = models.ForeignKey(to="Publisher") #外键关联,使用to=关联的表名
网友评论