Django数据库数据表操作
建立表单
django通过设置类来快速建表,打开models.py
例:
from __future__ import unicode_literals from django.db import models # Create your models here.
# 新建一个类叫user,其实就是新建一张叫user的表
class user(models.Model):
username = models.CharField(max_length = 20)
password = models.CharField(max_length = 20)
# 此函数是为了用该名字来显示对象
def __unicode__(self):
return self.username
我们可以看到数据库类有两个字段,分别是username和password,其实django还会默认添加一个id字段
同步数据库,在终端输入:
python manage.py makemigrations
python manage.py migrate
在可视化数据库看到此表
修改admin.py文件
from django.contrib import admin
from learning.models import user# 导入user类 # Register your models here.
admin.site.register(user)# 把user添加到admin
数据表的操作
每次对数据库操作都需要把其导入进来
from learning.models import user
- 插入
假设我们要插入一条username='ben'和password='ben'的记录(因为默认是非空的字段,所以要将所有字段都要填入,当然,默认的自增id除外),我们可以这样干
user(username='ben', password='ben').save()
#等同于SQL语句:INSERT INTO user(username,password) values ('ben','ben')
- 查询
假设我们要获取所有数据,则使用下面的语句:
alldata = user.objects.all()
#等同于SQL语句:SELECT * FROM user
假设我们要通过一个字段来获取数据(具有唯一性),则使用下面的语句:
onedata = user.objects.get(username='ben')
#约等同于SQL语句:SELECT * FROM userWHERE username='ben'
假设我们要通过过滤器来找多条数据,则使用下面的语句:
datas = user.objects.filter(password__in=['ben','sam','jack'])
#约等同于SQL语句:SELECT * FROM userWHERE username in ('ben','sam','jack')
- 操作具体举例:(在views.py文件中)
def login(username, password):
try:
person = user.objects.get(username=username)
try:
person = user.objects.get(username=username,password=password)
return '登录成功'
except:
return '登录密码错误'
except:
return '不存在该用户' def register(username, password):
try:
person = user.objects.get(username=username)
return '注册帐号已存在'
except:
user(username=username,password=password).save()
return '注册成功'
Django数据库数据表操作的更多相关文章
- 孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数
孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 不同类型 ...
- SQL Server 基础 01 数据库、表操作
对着书慢慢学习,一天一点点! 数据库操作 (create.alter.drop) --3-3-1 /create database 语句创建数据库 create database testSQL - ...
- MySQL 数据表操作
MySQL 数据表操作 创建MySQL数据表需要以下信息: -表名: -表字段名: -定义每个表字段: 一.创建数据表 1)mysql> create table table_name (c ...
- SQL语句(一)SQL和数据库数据表的创建
SQL的组成 (1) 数据定义语言DDL(Data Definition Language) 用于数据库和数据表的创建.修改和删除等操作 CREATE (create) 创建数据库.数据表 ALTER ...
- Mysql之数据表操作
数据表操作: 查看当前数据库中所有的表: show tables; 查看当前使用数据库: select database(); 使用数据表: use 表名; 创建数据表: create table 数 ...
- Qt实用技巧:使用QTableView、QSqlTableMode与QSqlDatabase对数据库数据进行操作
本文章博客地址:http://blog.csdn.net/qq21497936/article/details/78615800 Qt实用技巧:使用QTableView.QSqlTableMode与Q ...
- Django生成数据表时报错
Django生成数据表时报错 WARNINGS: ?: (mysql.W002) MySQL Strict Mode is not set for database connection 'defau ...
- SQL Sever实验一 创建和删除数据库数据表
一. 实验目的 1. 熟悉SQL Server 2008 中SQL Server Management Studio的环境 2. 了解SQL Server ...
- opencart 3.0 版本数据库数据表字典(详细篇)
1.下文是opencart3.0版本数据库数据表字典,表字段与功能的介绍都比较详细. 数据表 address :地址表,会员在结账时储存的账单地址或者配送地址(这个与区域配送方 ...
随机推荐
- select()函数
select(),确定一个或多个套接口的状态,本函数用于确定一个或多个套接口的状态,对每一个套接口,调用者可查询它的可读性.可写性及错误状态信息,用fd_set结构来表示一组等待检查的套接口,在调用返 ...
- Bayer图像处理
Bayer是相机内部的原始图片, 一般后缀名为.raw. 很多软件都可以查看, 比如PS.我们相机拍照下来存储在存储卡上的.jpeg或其它格式的图片, 都是从.raw格式转化过来的..raw格式 内部 ...
- Linux装机利器Cobbler安装配置
Linux装机利器Cobbler安装配置 2011-05-27 15:31:05 分类: LINUX 一.安装环境 centos 5.4 关掉iptables 关掉 selinux selinux ...
- presto架构和原理
Presto 是 Facebook 推出的一个基于Java开发的大数据分布式 SQL 查询引擎,可对从数 G 到数 P 的大数据进行交互式的查询,查询的速度达到商业数据仓库的级别,据称该引擎的性能是 ...
- Minicap使用分析
想起前段时间研究过的minicap,抱着无果的心情再次看了源码,这次竟然比上次清晰了一点点,难道是因为这两天被android源码折磨得身心疲惫然而却在不知不觉中增长了?不懂怎么样,看懂了大概. Min ...
- Postgresql获取所有schema
Postgresql 连接方式_连接五要素_psql: https://blog.csdn.net/u011402596/article/details/38510547 postgresql的sho ...
- Django rest framwork-CMDB API实战
一.序列化 serializers.py from rest_framework import serializers from web_manage import models class Asse ...
- 20165230 2017-2018-2 《Java程序设计》第7周学习总结
20165230 2017-2018-2 <Java程序设计>第7周学习总结 教材学习内容总结 第十一章 JDBC与MySQL数据库 本周了解了如何在Java程序中使用JDBC语提供的AP ...
- Ubuntu使用apt-get upgrade升级时出错
今天在按照常规的sudo apt-get update更新软件列表后,再使用sudo apt-get upgrade升级软件时,出现了以下的错误: 正在设置 linux-image-extra-4.4 ...
- Gh0st配置加密与解密算法(异或、Base64)
1.前言 分析木马程序常常遇到很多配置信息被加密的情况,虽然现在都不直接分析而是通过Wireshark之类的直接读记录. 2017年Gh0st样本大量新增,通过对木马源码的分析还发现有利用Gh0st加 ...