Python - Django - ORM 操作表
ORM 的对应关系:
类 ---> 数据库表
对象 ---> 数据库行
属性 ---> 字段
操作数据库表 ---> 创建/删除/修改表
操作数据库行 ---> 数据的增删改查
首先需要自己手动创建一个数据库
在 mysite 的 settings.py 中找到 DATABASES,并进行相应的配置
配置结果如下
DATABASES = {
'default': {
# 连接的数据库类型
'ENGINE': 'django.db.backends.mysql',
# 数据库的地址
'HOST': '127.0.0.1',
# 端口
'PORT': '3306',
# 数据库名
'NAME': 'Py_Django',
# 用户名
'USER': 'root',
# 密码
'PASSWORD': 'root'
}
}
然后来到 mysite 的 __init__.py 的文件中
MySQLdb 是 py2 下的
创建表:
创建一个表就是要创建一个类
ORM 相关的要在 app 的 models.py 中进行操作
from django.db import models # Create your models here. # 类必须继承 models.Model
class Admin(models.Model):
# 创建一个主键自增的字段
id = models.AutoField(primary_key=True) # AutoField 为自增的字段
# 创建一个 varchar 类型的不能为空的字段
# varchar 类型需要指定最大长度
username = models.CharField(null=False, max_length=20)
password = models.CharField(null=False, max_length=20)
然后运行两条命令
python manage.py makemigrations # 把 models.py 中的改动记录到 app01/migrations 文件夹下
python manage.py migrate # 把改动翻译成 SQL 语句并执行
执行完后看一下表
看一下 app01_admin 的表结构
删除表:
将 models.py 中写的类注释掉
然后执行那两条命令即可
show tables 就看不到 admin 表了
修改表:
在类中进行修改,然后执行上面两条命令就能进行修改
Python - Django - ORM 操作表的更多相关文章
- django orm 操作表
django orm 操作表 1.基本操作 增 models.Tb1.objects.create(c1='xx', c2='oo') 增加一条数据,可以接受字典类型数据 **kwargs inser ...
- Python - Django - ORM 多对多表结构的三种方式
多对多的三种方式: ORM 自动创建第三张表 自己创建第三张表, 利用外键分别关联作者和书,关联查询比较麻烦,因为没办法使用 ORM 提供的便利方法 自己创建第三张表,使用 ORM 的 ManyToM ...
- Python - Django - ORM 查询方法
models.py: from django.db import models class Human(models.Model): id = models.AutoField(primary_key ...
- python django ORM
1.在models.py中创创建类 # -*- coding: utf-8 -*- from __future__ import unicode_literals from django.db imp ...
- Python - Django - ORM 实例
准备工作: 首先创建一个名为 Py_Django 的数据库 新建项目,名为 mysite0 创建完成后需要进行几项配置 mysite0/settings.py 下 首先是 html 文件相关 其次是数 ...
- Python Django ORM 字段类型、参数、外键操作
AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bigint自增列,必须填入参数 primary ...
- Python Django ORM基本增删改查
工程下的urls.py中增加如下: from cmdb import views as cmdb #要把你要操作的项目import进来 urlpatterns = [ url(r'orm', cmdb ...
- Python Django ORM创建基本类以及生成数据结构
#在项目目录下的modules.py中创建一个类,来自动生成一张表UserInfo class UserInfo(models.Model): username = models.CharField( ...
- python - django (ORM使用步骤)
print('asd') """ # 1. 手动创建一个数据库 # 2. 在 Django 项目中设置连接数据库的相关配置(告诉Django 连接哪一个数据库) 在 DA ...
随机推荐
- nodejs tutorials
设置npm的镜像为淘宝镜像 npm config list npm config set registry " https://registry.npm.taobao.org "
- opencv数据类型和格式的坑
//cv::Mat uvp = cv::Mat::zeros(2, probp.size(), CV_8UC1); cv::Mat uvp = cv::Mat::zeros(2, probp.size ...
- BZOJ3514: Codechef MARCH14 GERALD07加强版【LCT】【主席树】【思维】
Description N个点M条边的无向图,询问保留图中编号在[l,r]的边的时候图中的联通块个数. Input 第一行四个整数N.M.K.type,代表点数.边数.询问数以及询问是否加密. 接下来 ...
- 将基于 .NET Framework 的 WPF 项目迁移到基于 .NET Core 3
在 Connect(); 2018 大会上,微软发布了 .NET Core 3 Preview,以及基于 .NET Core 3 的 WPF:同时还发布了 Visual Studio 2019 预览版 ...
- jquery选择器总结2
1.JQuery的概念 JQuery是一个JavaScript的类库,这个类库集合了很多功能方法,利用类库你可以用一些简单的代码实现一些复杂的JS效果. 2.JQuery实现了 代码的分离 不用再网页 ...
- window.open()与window.showModalDialog
弹出窗口两种方式: 1.window.showModalDialog: var feature = "dialogWidth:615px;dialogHeight:505px ...
- 线性模型的fit,predict
线性模型的fit其实一个进行学习的过程,根据数据和标签进行学习:predict则是基于fit之后形成的模型,来决定指定的数据对应于标签(y_train_5)的值. 下面的是手写字母判断是否为“5” s ...
- ORACLE设置密码无过期
适用于ORACLE11G //获取用户所属的profile SELECT username,PROFILE FROM dba_users;//查看profile的密码有效期 默认是180天SELECT ...
- WinForm下ComboBox设定SelectedValue总结 (SelectedValue==null解决办法)[转]
http://www.cnblogs.com/qqflying/archive/2013/05/23/3096050.html 实践发现:以SelectedIndex赋值让ComboBox自动选中时能 ...
- 【selenium】下拉框和弹出框处理
#-*-coding=utf-8 from selenium import webdriver import os,time driver= webdriver.Firefox() driver.ge ...