Django 对数据库ORM的操作

Django  mysql 自动生成表命令

 

 

#建立映射

python manage.py makemigrations

 

#入库

python manage.py migrate

 

 

 

 

django 允许外部ip访问服务

 

python manage.py runserver 0.0.0.0:8000

 

 

 

Django 建立数据库模型

 

from django.db import models

 

class Table_Test(models.Model):

    id = models.IntegerField(primary_key=True)

    name = models.CharField(max_length=200)

 

    class Meta:

        db_table = "test"

 

 

 

 

常用sql操作

 

#入库操作(增)

    #建立实例

    #user = User(username='新用户',password='你好')

    #入库操作

    #user.save()

 

    #删除数据(删)

    #User.objects.filter(username='新用户').delete()

 

 

    #修改数据() 第一种方式

    #user = User.objects.get(id=9)

    #修改字段

    #user.username = '1234'

    #保存修改

    #user.save()

 

    #修改数据(改) 第二种方式

    #return HttpResponse('',status=403)

    

    #User.objects.filter(id=9).update(password='新密码')

 

 

    #查询全部数据 翻译为 select * from user; all()返回值是list

    res = User.objects.all()

    #print(res)

 

    #查询限定条件的数据 翻译为 select * from user where username = '新用户123' and逻辑使用多个参数传递

    res = User.objects.filter(username='新用户',password='你好')

    #print(res)

 

    #只取一条 翻译 select * from user where id = 1

    res_one = User.objects.get(id=1)

    #print(res_one)

 

    #排除条件  翻译为 select * from user where username != '新用户123'   <>

    res = User.objects.exclude(username='新用户')

 

    #定制字段显示 翻译为 select password from user where name = '新用户'

    res_s = User.objects.filter(username='新用户').values('password')

 

    #排序 翻译为 select * from user order by id asc  倒序使用 reverse()

    res = User.objects.filter(username='新用户').order_by("password").reverse()

 

    #去重 翻译为 select distinct(username) from user where username = '新用户'

    res_dis = User.objects.filter(username='新用户').values('username').distinct()

    #print(res_dis)

 

    #取数量 翻译为 select count(*) from user

    res_count = User.objects.filter(username='新用户').count()

    print(res_count)

posted @ 2019-05-14 19:36  BOSS爱龟  阅读(243)  评论(0编辑  收藏  举报