ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Django的数据库ORM操作

2022-01-07 12:32:41  阅读:127  来源: 互联网

标签:varchar IntegerField models 数据库 py Django ORM


1 首先要创建自己的数据库,Django自己只能创建和编辑已有的数据库表。

2 使用Django来连接数据库

(1)修改setting.py的配置,如下:

   'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'jango3',
        'USER': 'root',
        'PASSWORD': '123456',
        'HOST': '127.0.0.1',  # 本机
        'PORT': '3306',
    }

(2)利用Django操作表,在models.py中进行操作:

class UserInfo(models.Model):
    name = models.CharField(max_length=32)
    password = models.CharField(max_length=64)
    age = models.IntegerField()
    
    # data这个是允许为空的设置
    data = models.IntegerField(null=True, blank=True)
    



"""
上述语句,事实上就是Django在底层进行了数据库操作。
创建表:
create table app01_userinfo(
    id bigint auto_increment primary key,
    name varchar(32),
    password varchar(64),
    age int
)


------------------------------------------
如果想要给已存在的表新增列,可能会遇到报错,解决方法如下:
1 新增列时,同时给出默认值
2 手动输入一个值
3 允许新增列为空

"""

(3)紧接着在终端中,按序执行下面的指令来迁移数据库表:

# 事实上,添加和删除表,都需要执行下列语句才能够生效

python manage.py makemigrations

python manage.py migrate

标签:varchar,IntegerField,models,数据库,py,Django,ORM
来源: https://blog.csdn.net/qq_40979183/article/details/122353153

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有