数据库对象

第三阶段:Django框架 day59 Django--模型层第一篇:单表操作

房东的猫 提交于 2019-12-02 07:01:20
目录 Django之模型层第一篇:单表操作 一 ORM简介 二 单表操作 2.1 按步骤创建表 2.2 添加记录 2.3 查询记录 2.3.1 查询API 2.3.2 基于双下划线的模糊查询 2.3.3 F与Q查询 2.3.4 聚合查询 2.3.5 分组查询 2.4 修改记录 2.5.1 直接修改单条记录 2.5.2 修改QuerySet中的所有记录对象 2.5 删除记录 2.5.1 直接删除单条记录 2.5.2 删除QuerySet中的所有记录对象 Django之模型层第一篇:单表操作 一 ORM简介 ​ 我们在使用Django框架开发web应用的过程中,不可避免地会涉及到数据的管理操作(如增、删、改、查),而一旦谈到数据的管理操作,就需要用到数据库管理软件,例如mysql、oracle、Microsoft SQL Server等。 ​ 如果应用程序需要操作数据(比如将用户注册信息永久存放起来),那么我们需要在应用程序中编写原生sql语句,然后使用pymysql模块远程操作mysql数据库,详见图1 但是直接编写原生sql语句会存在两方面的问题,严重影响开发效率,如下 #1. sql语句的执行效率:应用开发程序员需要耗费一大部分精力去优化sql语句 #2. 数据库迁移:针对mysql开发的sql语句无法直接应用到oracle数据库上,一旦需要迁移数据库,便需要考虑跨平台问题

Django模型层之单表操作

梦想的初衷 提交于 2019-12-02 06:57:05
Django模型层之单表操作 一 、 ORM 简介 我们在使用 Django 框架开发 web 应用的过程中,不可避免地会涉及到数据的管理操作(如增、删、改、查),而一旦谈到数据的管理操作,就需要用到数据库管理软件,例如 mysql 、 oracle 、 Microsoft SQL Server 等。 如果应用程序需要操作数据(比如将用户注册信息永久存放起来),那么我们需要在应用程序中编写原生sql语句,然后使用pymysql模块远程操作mysql数据库,详见图一^①^ 但是直接编写原生sql语句会存在两方面的问题,严重影响开发效率,如下 sql语句的执行效率:应用开发程序员需要耗费一大部分精力去优化sql语句 数据库迁移:针对mysql开发的sql语句无法直接应用到oracle数据库上,一旦需要迁移数据库,便需要考虑跨平台问题 为了解决上述问题, django 引入了 ORM 的概念, ORM 全称 Object Relational Mapping ,即对象关系映射,是在 pymysq 之上又进行了一层封装,对于数据的操作,我们无需再去编写原生 sql ,取代代之的是基于面向对象的思想去编写类、对象、调用相应的方法等, ORM 会将其转换/映射成原生 SQL 然后交给 pymysql 执行,详见图二^②^ 图片一 图片二 如此,开发人员既不用再去考虑原生SQL的优化问题

初识DJango框架

坚强是说给别人听的谎言 提交于 2019-12-02 06:55:42
小白必会三板斧 HttpResponse :返回字符串 render: 返回HTML页面 redirect: 重定向 静态文件配置 什么是静态文件 网站所用到的 自己写好js 自己写好css 第三方的框架 bootstrap、fontwesome、sweetalert 通常情况下 网站所用到的静态文件资源 统一都放在static文件夹下 STATIC_URL = '/static/' 是访问静态资源的接口前缀,也就是说, '/static/' 就像一个令牌,只要是去访问静态资源,就必须先经过 '/static/' ,不然的话就无法找到,只要你想访问静态资源 你就必须以 static 开头。 手动配置静态文件访问资源 在 settings.py 中配置 STATICFILES_DIRS = [ os.path.join(BASE_DIR,'static'), os.path.join(BASE_DIR,'static1'), ] 接口前缀 动态解析 有下面的代码,你就不一定必须按照 static 去访问静态资源,可能是其他的项目经理规定好的,eg: xxx {% load static %} <link rel="stylesheet" href="{% static 'bootstrap/css/bootstrap.min.css' %}"> <script src="{%

Django模型层

孤人 提交于 2019-12-02 06:41:46
Django之模型层:单表操作 ORM简介 我们在使用Django框架开发web应用的过程中,不可避免地会涉及到数据的管理操作(如增、删、改、查),而一旦谈到数据的管理操作,就需要用到数据库管理软件,例如mysql、oracle、Microsoft SQL Server等。 如果应用程序需要操作数据(比如将用户注册信息永久存放起来),那么我们需要在应用程序中编写原生sql语句,然后使用pymysql模块远程操作mysql数据库。 但是直接编写原生sql语句会存在两方面的问题,严重影响开发效率,如下 #1. sql语句的执行效率:应用开发程序员需要耗费一大部分精力去优化sql语句 #2. 数据库迁移:针对mysql开发的sql语句无法直接应用到oracle数据库上,一旦需要迁移数据库,便需要考虑跨平台问题 为了解决上述问题,django引入了ORM的概念,ORM全称Object Relational Mapping,即对象关系映射,是在pymysq之上又进行了一层封装,对于数据的操作,我们无需再去编写原生sql,取代代之的是基于面向对象的思想去编写类、对象、调用相应的方法等,ORM会将其转换/映射成原生SQL然后交给pymysql执行。 原生SQL与ORM的对应关系如下: 如此,开发人员既不用再去考虑原生SQL的优化问题,也不用考虑数据库迁移的问题

走进JavaWeb技术世界13:Hibernate入门经典与注解式开发

时光怂恿深爱的人放手 提交于 2019-12-02 06:40:44
本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下Star哈 文章首发于我的个人博客: www.how2playlife.com 本文是微信公众号【Java技术江湖】的《走进JavaWeb技术世界》其中一篇,本文部分内容来源于网络,为了把本文主题讲得清晰透彻,也整合了很多我认为不错的技术博客内容,引用其中了一些比较好的博客文章,如有侵权,请联系作者。 该系列博文会告诉你如何从入门到进阶,从servlet到框架,从ssm再到SpringBoot,一步步地学习JavaWeb基础知识,并上手进行实战,接着了解JavaWeb项目中经常要使用的技术和组件,包括日志组件、Maven、Junit,等等内容,以便让你更完整地了解整个JavaWeb技术体系,形成自己的知识框架。为了更好地总结和检验你的学习成果,本系列文章也会提供每个知识点对应的面试题以及参考答案。 如果对本系列文章有什么建议,或者是有什么疑问的话,也可以关注公众号【Java技术江湖】联系作者,欢迎你参与本系列博文的创作和修订。 文末赠送8000G的Java架构师学习资料,需要的朋友可以到文末了解领取方式,资料包括Java基础、进阶、项目和架构师等免费学习资料,更有数据库、分布式

Django 单表操作

醉酒当歌 提交于 2019-12-02 06:25:43
Django 单表操作 1 按步骤创建表 1.1 创建django项目,新建名为app01的app,在app01的models.py中创建模型 class Employee(models.Model): # 必须是models.Model的子类 id=models.AutoField(primary_key=True) name=models.CharField(max_length=16) gender=models.BooleanField(default=1) birth=models.DateField() department=models.CharField(max_length=30) salary=models.DecimalField(max_digits=10,decimal_places=1) 1.2 django的orm支持多种数据库,如果想将上述模型转为mysql数据库中的表,需要settings.py中 # 删除\注释掉原来的DATABASES配置项,新增下述配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 使用mysql数据库 'NAME': 'db1', # 要连接的数据库 'USER': 'root', # 链接数据库的用于名 'PASSWORD': '',

Django之模型层:表操作

≯℡__Kan透↙ 提交于 2019-12-02 06:25:35
Django之模型层:表操作 一、ORM简介 MVC或者MTV框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库,这极大的减轻了开发人员的工作量,不需要面对因数据库变更而导致的无效劳动 ORM是“对象-关系-映射”的简称。 #sql中的表 #创建表: CREATE TABLE employee( id INT PRIMARY KEY auto_increment , name VARCHAR (20), gender BIT default 1, birthday DATA , department VARCHAR (20), salary DECIMAL (8,2) unsigned, ); #sql中的表纪录 #添加一条表纪录: INSERT employee (name,gender,birthday,salary,department) VALUES ("alex",1,"1985-12-12",8000,"保洁部"); #查询一条表纪录: SELECT * FROM employee WHERE age=24; #更新一条表纪录: UPDATE employee SET birthday="1989-10-24" WHERE id=1; #删除一条表纪录: DELETE

Django之模型层第一篇:单表操作

℡╲_俬逩灬. 提交于 2019-12-02 06:17:11
Django之模型层第一篇:单表操作 一 ORM简介 ​ 我们在使用Django框架开发web应用的过程中,不可避免地会涉及到数据的管理操作(如增、删、改、查),而一旦谈到数据的管理操作,就需要用到数据库管理软件,例如mysql、oracle、Microsoft SQL Server等。 ​ 如果应用程序需要操作数据(比如将用户注册信息永久存放起来),那么我们需要在应用程序中编写原生sql语句,然后使用pymysql模块远程操作mysql数据库,详见图1 但是直接编写原生sql语句会存在两方面的问题,严重影响开发效率,如下 #1. sql语句的执行效率:应用开发程序员需要耗费一大部分精力去优化sql语句 #2. 数据库迁移:针对mysql开发的sql语句无法直接应用到oracle数据库上,一旦需要迁移数据库,便需要考虑跨平台问题 为了解决上述问题,django引入了ORM的概念,ORM全称Object Relational Mapping,即对象关系映射,是在pymysq之上又进行了一层封装,对于数据的操作,我们无需再去编写原生sql,取代代之的是基于面向对象的思想去编写类、对象、调用相应的方法等,ORM会将其转换/映射成原生SQL然后交给pymysql执行,详见图2 。。。。。。插图1 原生SQL与ORM的对应关系示例如下 插图2 若图片需要修改,则查看地址: https:/

ThinkPHP5-操作数据库(原生|构造器|模型)

痴心易碎 提交于 2019-12-02 05:53:36
原生sql $result = Db::query('select * from banner_item where banner_id = ?',[$id]) ; 构造器 封装了对不同数据库的操作 提供了一种统一操作的语法 不需要关心不同数据库sql语法的差异性 /** * Db::table('banner_item')->where('banner_id','=',$id) 返回Query对象 只有调用了执行方法才会执行语句返回结果 * 前面的辅助方法或者叫 链式方法 只有调用了find|select|update|delete|insert 才会真正执行sql * 构造器 find() 返回一条记录 一维数组 select()返回所有满足记录 二维数组 */ $result = Db::table('banner_item')->where('banner_id','=',$id)->select() ; <> Db::table('banner_item'); Db::where('banner_id','=',$id) ; $result = Db::select() ; where('字段名','表达式','查询条件') 表达式为=的时候 可以缺省where('banner_id',$id) where有三种 表达式(上述) 数组 闭包(下例) $result =

Java oop第08章_JDBC01(入门)

被刻印的时光 ゝ 提交于 2019-12-02 05:38:02
一、 JDBC的概念:   JDBC(Java Database Connectivity)java数据库链接,是SUN公司为了方便我们Java程序员使用Java程序操作各种数据库管理系统制定的一套标准(规范),    其中定义一些接口、抽象类和抽象方法,再由各个数据库管理系统厂商实现这些抽象方法,我们程序员只要学习一套JDBC规范就可以操作各种数据库管理系统。   JDBC也是一个注册商标。 二、 JDBC的入门案例/JDBC的开发流程:   1. 创建一个Java project/web project:JDBC   2. 添加链接数据库的jar包:Mysql的jar包。   步骤:     1) 在项目的根目录下创建一个存放jar包的文件夹:lib     2) 将MySQL的jar包复制到lib下。     3) 在MySQL的jar包上右键build path Add to build path,将jar文件加入到当前项目中,自动添加到Reference Libraries库中。   3. 创建项目需要的包:     1)Com.oop.entity:放置实体(和数据库向对应)     2)Com.oop.dao:放置DAO接口,(Data Access Object)数据访问对象,专门与数据库打交道的对象,其中会提供一些针对数据库的CRUD方法     3)com