数据库开发-Django ORM的数据库迁移 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一. Django 项目准备 1>.安装django包 pip install django=2.2.7 除了使用pip安装之外,还可以从网上下载Django的压缩包自行安装.在浏览器上输入下载地址:“https://www.lfd.uci.edu/~gohlke/pythonlibs/#sendkeys”,找到如下图所示对应的Django版本下载到本地后,执行“pip install…
数据库开发-Django ORM的多对多查询 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.联合主键问题 CREATE TABLE `employees` ( `emp_no` ) NOT NULL, `birth_date` date NOT NULL, `first_name` ) NOT NULL, `last_name` ) NOT NULL, `gender` ) ' COMMENT 'M=1, F=2', `hire_date` date NOT NULL,…
数据库开发-Django ORM的一对多查询 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.联合主键问题 CREATE TABLE `employees` ( `emp_no` ) NOT NULL, `birth_date` date NOT NULL, `first_name` ) NOT NULL, `last_name` ) NOT NULL, `gender` ) ' COMMENT 'M=1, F=2', `hire_date` date NOT NULL,…
数据库开发-Django ORM的单表查询 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查询集 1>.查询集相关概述 查询会返回结果的集,它是django.db.models.query.QuerySet类型. 它是惰性求值,和SQLAlchemy一样.结果就是查询的集. 它是可迭代对象. 惰性求值: 创建查询集不会带来任何数据库的访问,直到调用方法使用数据时,才会访问数据库.在迭代.序列 化.if语句中都会立即求值. 缓存: 每一个查询集都包含一个缓存,来最小化对数据…
静态文件配置 # 1.静态文件 网站所使用的已经提前写好的文件 css文件 js文件 img文件 第三方文件 我们在存储静态文件资源的时候一般默认都是放在static文件夹下 # 2.Django静态文件配置 settings.py STATICFILES_DIRS = [ os.path.join(BASE_DIR,'static') os.path.join(BASE_DIR,'static') os.path.join(BASE_DIR,'static') ] # 3.接口前缀 STATI…
1.指定连接pymysql(python3.x) 先配置_init_.py import pymysql pymysql.install_as_MySQLdb() 2.配置连接mysql文件信息 settings.py DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'django_orm', #你的数据库名称 'USER': 'root', #你的数据库用户名 'PASSWORD': '', #你…
认识数据库备份和事务日志备份 数据库备份与日志备份是数据库维护的日常工作,备份的目的是 一.在于当数据库出现故障或者遭到破坏时可以根据备份的数据库及事务日志文件还原到最近的时间点将损失降到最低点 二.为了从一台机器到另一台机器所进行的数据传输 数据库的备份包括静态备份和动态备份,完全备份.差异备份及日志备份等,备份生成一个.bak文件 完全备份--将数据库所有数据进行备份 差异备份--在之前备份的数据之后增加的数据进行备份 备份数据库 1.鼠标右键选择你要进行备份的数据库-任务-备份 2.可以在…
Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. 基本配置 一.创建django程序 终端命令:django-admin startproject sitename IDE创建Django程序时,本质上都是自动执行上述命令 其他常用命令: python manage.py runserver 0.0.0.0 python manage.py st…
什么时候Django会将QuerySet转换为SQL去执行: 根据Django的数据库机制,对于QuerySet来说,当QuerySet被第一次构建,然后又调用他的filter方法,接着在对其进行切片操作的过程中,Django其实并没有去访问数据库.只有当你对QuerySet进行求值时,Django才会去访问数据库. 在以下情况下QuerySet会被转换为SQL语句执行: 迭代:在遍历QuerySet对象的时候,会首先先执行这个SQL语句,然后再把这个结果返回进行迭代.比如以下代码就会转换为SQ…
外键 在MySQL中,表有两种引擎,一种是InnoDB,另外一种是myisam.如果使用的是InnoDB引擎,是支持外键约束的. 外键的使用 使用外键前需要先确保相应外键已存储在数据库中(flask中会在你引用时自动保存相应外键). 如果想要引用另外一个app的模型,那么应该在传递to参数的时候,使用app.model_name进行指定. 如果模型的外键引用的是本身自己这个模型,那么to参数可以为'self',或者是这个模型的名字. 外键的删除 如果一个模型使用了外键.那么在对方那个模型被删掉后…
昨天晚上,我们完成了一个简单的实例来对数据库表进行操作.今天,我们要熟悉更多的API,实现更复杂的功能.这一步完成了,我们对小型数据的操作问题也就不大了. 现在,我们还是参考django官方文档,来进行学习 1.构造数据表 把以下内容,拷贝到你的朋友charm中,然后执行migrate命令 class Blog(models.Model):name = models.CharField(max_length=100)tagline = models.TextField() def __str__…
python3 manage.py makemigrations --empty api # 因为我的models.py文件并直接在项目根目录,而是根目录下的api目录中 python3 manage.py makemigrations python3 manage.py migrate --fake api # 注意,此时--fake很重要,表示并不实际执行migrate操作,只是做记录,记录修改前的数据库样式. ... # 修改models.py文件,添加字段 python3 manage.…
第16课-数据库开发及ado.net 数据库SQl,创建数据库和表,增删改语句,约束,top和Distinct,聚合函数介绍 SQL语句入门(脚本.命令) SQL全名是结构化查询语言(Structured Query Language) SOL语句是和DBMS“交谈”专用的语言,不同的DBMS都认SQL语法. Sql中字符串使用单引号:通过写俩个单引号来转义一个单引号. Sql中的注释“——” 单行注释比较好 判断俩个数据是否相等使用=(单等号) 在sql语句中sql代码不区分大小写 SQL主要…
第15课-数据库开发及ado.net 数据库介绍,主键,外键,启动数据库,数据库身份验证方式,建表,分离数据库 1.  学习方法 2.  多涨见识 3.  比自己强的人一起,学习更强:比自己更聪明的人在一起,学习变得更聪明. 数据库Database 数据的仓库 DB  仓库管理员DBA 数据库的特点:海量存储.查找速度快.并发性问题控制.安全性.数据完整性. DBMS(Database Management System 数据库管理系统)(*.mdf) MYSQL.MSSQLServer.DB2…
Django是用python写的web开发框架,其特点是: 1.重量级框架,内部封装了很多的功能组件,使开发变的简便快速, 2.MVT模式:前后端分离,高内聚低耦合,m:model,与mvc中的m功能相同,负责和数据库交互,进行数据处理,v:view,与mvc中的c功能相同,接收请求,进行业务处理,返回应答, t:template,与mvc中的v功能相同,负责封装构造要返回的html. orm:对象关系映射,主要实现模型对象到数据库数据的映射. 1.首先要在models.py中建立模型类,示例:…
一 Django的数据库配置 (一)修改settings.py文件关于数据库的配置: Django默认使用sqlite: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', # sqlite引擎 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } } 再添加一个数据库: DATABASES = { 'default': { 'ENGINE': 'django.db.bac…
首先,我来介绍一下什么是ORM框架: O是object,也就类对象的意思,R是relation,翻译成中文是关系,也就是关系数据库中数据表的意思,M是mapping,是映射的意思.在ORM框架中,它帮我们把类和数据表进行了一个映射,可以让我们通过类和类对象就能操作它所对应的表格中的数据.ORM框架还有一个功能,它可以根据我们设计的类自动帮我们生成数据库中的表格,省去了我们自己建表的过程. django中内嵌了ORM框架,不需要直接面向数据库编程,而是定义模型类,通过模型类和对象完成数据表的增删改…
Django ORM 数据库操作(上) ORM介绍 映射关系: 数据库表名 ---------->类名:数据库字段 ---------->类属性:数据库表一行数据 ---------->类实例化对象: ORM两大功能: 操作表:创建.修改.删除表: 操作数据:增删改查: ORM利用pymysql第三方工具连接数据库,Django无法帮助我们创建数据库,只能我们创建完成后告诉它,让Django去连接: 创建表之前的准备工作 1.自己创建数据库: 2.在settings.py文件中配置mys…
一.ORM介绍 映射关系: 表名 -------------------->类名 字段-------------------->属性 表记录----------------->类实例化对象 ORM的两大功能: 操作表: - 创建表 - 修改表 - 删除表 操作数据行: - 增删改查 ORM利用pymysql第三方工具链接数据库 Django没办法帮我们创建数据库,只能我们创建完之后告诉它,让django去链接 二.创建表之前的准备工作 1.自己创建数据库 2.在settings里面配置m…
浏览目录 数据库的配置 ORM表模型 ORM之增(create,save) ORM之删(delete) ORM之改(update和save) ORM之查(filter,value) 一.数据库的配置 1.diango默认支持sqlite,mysql,oracle,postgresql数据库. <1>sqlite django默认使用sqlite的数据库,默认自带sqlite的数据库驱动 , 引擎名称:django.db.backends.sqlite3 <2>mysql djang…
DJango配置mysql数据库以及数据库迁移 一.Django 配置MySQL数据库 在settings.py中配置 import pymysql # 配置MySQL pymysql.install_as_MySQLdb() DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 数据库引擎 'NAME': 'mydb', # 你要存储数据的库名,事先要创建之 'USER': 'root', # 数据库用户名 'PA…
背景描述 最近在使用 Django 时,发现当调用 api 后,在数据库同一个进程下的事务中,出现了大量的数据库查询语句.调查后发现,是由于 Django ORM 的机制所引起. Django Object-Relational Mapper(ORM)作为 Django 比较受欢迎的特性,在开发中被大量使用.我们可以通过它和数据库进行交互,实现 DDL 和 DML 操作. 具体来说,就是使用 QuerySet 对象来检索数据, 而 QuerySet 本质上是通过在预先定义好的 model 中的…
Django 初探--Django的开发服务器及创建数据库(笔记) 1.Django的开发服务器 Django框架中包含一些轻量级的web应用服务器,开发web项目时不需再对其配置服务器,Django提供的内置服务器可以在代码修改时自动加载,从而实现网站的迅速开发. 在我们创建的Django_Pro项目的目录下,打开Dos命令行,启动内置服务器: manage.py runserver 默认情况下,使用命令manage.py runserver 启动内置服务器,默认使用本机8000端口,若需要使…
 #安装python pip  (在物理环境中安装) sudo apt-get install python-pip       sudo apt-get install python3-pipsudo pip install --upgrade pipsudo pip3 install --upgrade pip 备注说明: python-pip 是python2版本的包管理工具   , python3-pip是python3版本的包管理工具 ,  如果你创建了一个python2的虚拟环境 ,…
在前一篇我们说了,mybatis-generator反向生成代码. 这里我们开始说如何在django中反向生成mysql model代码. 我们在展示django ORM反向生成之前,我们先说一下怎么样正向生成代码. 正向生成,指的是先创建model.py文件,然后通过django内置的编译器,在数据库如mysql中创建出符合model.py的表. 反向生成,指的是先在数据库中create table,然后通过django内置的编译器,生成model代码. 1.准备工作 创建django工程以及…
在Django中实现数据库的事务操作 在学习MySQL数据库时,MySQL数据库是支持原子操作的. 什么是数据库的原子操作呢??打个比方,一个消费者在一个商户里刷信用卡消费. 交易正常时,银行在消费者的账户里减去相应的款项,在商户的帐户加上相应的款项. 但是如果银行从消费者的账户里扣完钱之后,还未在商户的帐户里加上相应的款项时. 由于某些原因,系统或者数据库出现异常了,那么此时钱已经从消费者的账户里扣除了,但是商户的账户里却没有加上相应的款项,让会让商户遭受损失. 这种情况下,最好的解决办法就是…
比较有用 转自 http://blog.csdn.net/fgf00/article/details/53678205 一.DjangoORM 创建基本类型及生成数据库表结构 1.简介 2.创建数据库 表结构 二.Django ORM基本增删改查 1.表数据增删改查 2.表结构修改 三.Django ORM 字段类型 1.字段类型介绍 2.字段参数介绍 3.Django ORM 外键操作 一.DjangoORM 创建基本类型及生成数据库表结构 1.简介 ORM:关系对象映射.定义一个类自动生成数…
Django ORM数据库操作(下) 一.增加表记录 对于表单有两种方式: # 方式一:实例化对象就是一条表记录france_obj = models.Student(name="海地", course="Python", birth="2000-10-1", grade=90) france_obj.save() # 方式二: models.Student.objects.create(name="海地", course=&…
一.数据库配置 1.django默认支持sqlite,mysql, oracle,postgresql数据库. django默认使用sqlite的数据库,默认自带sqlite的数据库驱动 , 引擎名称:django.db.backends.sqlite3 引擎名称:django.db.backends.mysql 2.在django的项目中会默认使用sqlite数据库,在settings里有如下设置: DATABASES = { 'default': { 'ENGINE': 'django.db…
移动APP追求追求功能实现的同一时候,用户体验很重要.開始APP的同一时候.要时刻的切换开发人员的角色,如你开发的时候.是 站在APP的开发角色,处于生产者的位置:当你測试的时候.你应该把自己放在用户的角色上去考虑所做的APP了.举一个非常easy的 样例,就像我们天天使用手机上的新闻.好友动态等,当你没有网络的时候,也还有数据的存在提供用户浏览,而不是一篇"白 色"的.如同电脑死机一般.这就是移动APP在开发的时候,提供了最后一次网络状态下的数据缓存,提到数据缓存,可想而知有内 存缓…