当然,本篇的前提是你已经配置好了相关的环境,这里就不详细介绍。

一. 在settings.py文件中设置数据库属性。

如下:

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', #MySQL数据库
'NAME': 'test1', #库名
'USER': 'root', #用户名
'PASSWORD': 'a8115080', #密码
'HOST':'localhost',
'PORT':'',
}
}

二. 创建数据库模型App

python manage.py startapp dbModel

目录结构如下(不同的版本也许会有不同):

|-- dbModel
    |-- __init__.py
    |-- admin.py
    |-- models.py
    |-- tests.py
    |-- app.py
    |-- views.py

三. 在数据库中创建表

1. 在dbModel/models.py中声明表结构

如下:

from django.db import models
class Test(models.Model):
name = models.CharField(max_length=20) #字段,默认会多个id字段
age = models.IntegerField()

其中,一个class就对应着一张表,表名为:dbModel_Test ,即AppName_ClassName.

在这里你可以一次声明多个表。

2. 然后使用命令行就可以在本地数据库中创建相应表:

python manage.py syncdb        #老版本

python manage.py makemigrations        #新版本
python manage.py migrate

四. 在函数中对数据库表进行基本操作

说明:

1. 在函数里操作数据库,经常会遇到编码错误问题,所以一般要在文件的首行加上

# -*- coding:UTF-8 -*-

2. 操作数据库返回的结果一般都是个对象,而那些字段值则是这个对象的属性,使用 . 即可调用。

简单操作:

1. 添加新元素

test1 = Test(name='小明',age=18)
test1.save()

2. 查询

Test.objects.all()        #查询表中所有元组
Test.objects.get(id=1) #获取单个对象,使用obj.fieldName来获取字段数据

3.按条件筛选

Test.objects.filter(name='小明')   #返回结果是一个列表,列表中每个元素是一个元组,存储着一条记录的相关信息

4.更新

Test.objects.filer(id='').updata(name = '大明')
或者:
p = Test.objects.get(id=1)
p.name = '大明'
p.save()

5.删除

p = Test.objects.get(name='小明')
p.delete()

Test.objects.filter(name='小明').delete()

Django简单的数据库操作的更多相关文章

  1. 关于Django中的数据库操作API之distinct去重的一个误传

    转载自http://www.360doc.com/content/18/0731/18/58287567_774731201.shtml django提供的数据库操作API中的distinct()函数 ...

  2. Django【第5篇】:Django之ORM数据库操作

    django之ORM数据库操作 一.ORM介绍 映射关系: 表名 -------------------->类名 字段-------------------->属性 表记录-------- ...

  3. 【Django】Django model与数据库操作对应关系(转)

    Django对数据库的操作分用到三个类:Manager.QuerySet.Model. Manager的主要功能定义表级方法(表级方法就是影响一条或多条记录的方法),我们可以以models.Manag ...

  4. Django框架----ORM数据库操作

    一.ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术. 简单的说,ORM是通过使用 ...

  5. django之ORM数据库操作

    一.ORM介绍 映射关系: 表名 -------------------->类名 字段-------------------->属性 表记录----------------->类实例 ...

  6. django基础之数据库操作

    Django 自称是“最适合开发有限期的完美WEB框架”.本文参考<Django web开发指南>,快速搭建一个blog 出来,在中间涉及诸多知识点,这里不会详细说明,如果你是第一次接触D ...

  7. PHP开发-最简单的数据库操作,使用ezSQL

    PHP数据库操作使用ezSQL来实现,简单好用. 如果用的是mysql数据库,将下载的ezSQL文件中的mysql和shared连个文件夹拷贝到PHP工程目录中引用即可. 在PHP文件中 // Inc ...

  8. 用户增删改查 django生命周期 数据库操作

    一 django生命周期 1 浏览器输入一个请求(get/post)2 响应到django程序中3 执行到url,url通过请求的地址匹配到不同的视图函数4 执行对应的视图函数,此过程可以查询数据库, ...

  9. Objective-C ,ios,iphone开发基础:ios数据库(The SQLite Database),使用终端进行简单的数据库操作

    SQLite  是一个轻量级的免费关系数据库.SQLite最初的设计目标是用于嵌入式系统,它占用资源非常少,在嵌入式设备中,只需要几百K的内存就够了,可以在(http://www.sqlite.org ...

随机推荐

  1. Redis 5种数据结构使用及注意事项

    1优缺点 非常非常的快,有测评说比Memcached还快(当大家都是单CPU的时候),而且是无短板的快,读写都一般的快,所有API都差不多快,也没有MySQL Cluster.MongoDB那样更新同 ...

  2. 在虚拟机中安装红旗桌面7.0 Linux操作系统的详细图文教程

    本文作者:souvc 本文出处:http://www.cnblogs.com/liuhongfeng/p/5343087.html 以下是详细的内容: 一.安装虚拟机. 安装虚拟机可以参考:在Wind ...

  3. form表单取消按钮自动提交

    默认写在form表单里的按钮可以自动提交表单,现在要实现的效果是点击button按钮调用js函数,再有ajax提交 <button type="button" class=& ...

  4. 转《WF编程》笔记目录

    <WF编程>笔记目录 2008-03-18 09:33 by Windie Chai, 26803 阅读, 49 评论, 收藏, 编辑 WF笔记开始 <WF编程>系列之0 - ...

  5. [WPF系列]-基础系列 Property Trigger, DataTrigger & EventTrigger

    So far, we worked with styles by setting a static value for a specific property. However, using trig ...

  6. UVALive 4426 Blast the Enemy! --求多边形重心

    题意:求一个不规则简单多边形的重心. 解法:多边形的重心就是所有三角形的重心对面积的加权平均数. 关于求多边形重心的文章: 求多边形重心 用叉积搞一搞就行了. 代码: #include <ios ...

  7. python使用you-get模块下载视频

    pip install you-get # 安装先 怎么用    进入命令行: you-get url 暂停下载:ctrl + c ,继续下载重复  you-get url 官网地址:https:// ...

  8. Linux下Nginx+Tomcat负载均衡和动静分离配置要点

    本文使用的Linux发行版:CentOS6.7 下载地址:https://wiki.centos.org/Download 一.安装Nginx 下载源:wget http://nginx.org/pa ...

  9. 淘宝WAP版小BUG分析

    前几天发现的一个淘宝WAP版的小BUG,就是用桌面版chrome看的时候产品评价中的图片显示不出来,都是图裂了. 这是什么原因呢?图片为什么会显示不出来呢?淘宝的技术人员.测试人员不可能没发现啊.开启 ...

  10. 关于Unity的网络框架

    注:Unity 5.1里引入了新的网络框架,未来目标应该是WOW那样的,现在还只是个P2P的架子. 网络的框架,无非是如何管理网络数据的收发,通信双方如何约定协议.之前做的框架与GameObject无 ...