Django基础之数据库与ORM

一.数据库配置1.django默认支持sqlite,mysql, oracle,postgresql数据库。django默认使用sqlite的数据库,默认自带sqlite的数据库驱动 , 引擎名称:django.db.backends.sqlite3引擎名称:django.db.backends.mysql2.在django的项目中会默认使用sqlite数据库,在settings里有如下设置:DA
阅读本文

如果有人问你数据库的原理,叫他看这篇文章

http://blog.jobbole.com/100349/英文:http://coding-geek.com/how-databases-work/ 一提到关系型数据库,我禁不住想:有些东西被忽视了。关系型数据库无处不在,而且种类繁多,从小巧实用的 SQLite 到强大的 Teradata 。但很少有文章讲解数据库是如何工作的。你可以自己谷歌/百度一下『关系型数据库原理』,看看结果多么的稀少【
阅读本文

Oracle数据库字符集问题

Oracle数据库的字符集问题,也涉及作为服务器操作系统的CentOS或者Windows的字符集与Oracle字符集之间的关联关系Oracle的字符集,这个问题的提出是因为两个原因:一是遇到一个DMP文件需要恢复到数据库中去,而这个DMP文件的字符集是US7ASCII,第二个是系统上安装Oracle已经能成功,但是被中文英文系统字符集等问题搞得有点头大。Oracle数据库的字符集问题不算是大问题,
阅读本文

数据库开发

1、Mysql是一种开放源代码的关系型   数据库管理系统(RDBMS),Mysql数据库系统使用最常用的数据库管理语言-----结构化查询语言(SQL)进行数据库管理2、官网下载Mysql后进行安装下载地址:http://dev.mysql.com/downloads/mysql/选择合适的版本3、配置环境变量(mysql.exe)路径:C:Program FilesMySQLMySQL
阅读本文

数据库的四种隔离级别

最近在看高性能MYSQL一书,所以对其进行例子分析已巩固自己的印象  数据库的事务操作其实就是一组原子性的操作,要么全部操作成功,要么全部操作失败。    比如说我需要对外销售1张电影票,且登记一下销售信息到另一个表,至少需要以下3个步骤  1.查询电影票数量是否满足销售1张电影票 SELECT remain_count FROM cinema WHERE film_id = 123456789
阅读本文

数据库面试系列大纲

数据库面试经常被问到的考点:1.内连接和外连接,左外连接和右外连接,全外连接2.视图是什么,视图的优点3.索引的优点,建立索引的规则有哪些?4.写sql语句:涉及到order by ,group by, having ,like ,limit  等5.什么是慢查询?如何优化慢查询?6.mysql性能优化7.mysql的存储引擎都有哪些?这些存储引擎有什么区别?后面会针对每个点写单独的博客。。。
阅读本文

数据库应用中_你最看重哪一块的指标或功能?

随着用户、业务和数据的增长,由于I/O瓶颈(存储和网络)导致的备份、性能、迁移、升级、只读实例、磁盘容量、Binlog延迟等相关问题渐渐显现;过多数据库存储引擎的类型导致的工程效率以及运维成本显著上升,最好有一种通用的产品技术架构能兼顾不同用户场景的需求。针对以上关系型数据库在云托管环境逐渐暴露出一些问题,阿里云将在9月下旬推出自研通用云数据库PolarDB,是国内首个能从根本解决两大痛点的
阅读本文

数据库学习纪要(八):SQL语法-3

1)概述 1.1:内建 SQL 函数的语法 SELECT function(列) FROM 表1.2:函数的类型 合计函数(Aggregate functions):Aggregate 函数的操作面向一系列的值,并返回一个单一的值。 函数 描述 AVG(column) 返回某列的平均值 COUNT(column) 返回某列的行数(不包括NULL值) COUNT(*) 返回被选行数
阅读本文

Mysql数据库、数据表、数据的基本操作

(一)数据库的基本操作 创建数据库(create database +数据库名;) 查看所有数据库(show databases;) 修改数据库(alter database 数据库名 character set utf-8;) 使用某一数据库(use 数据库名;) 查看当前使用的数据库(show database(); ) 删除数据库( drop 数据库名;) (二)演示 1.创建数据库 C
阅读本文

数据库事务中的隔离级别和锁

数据库事务中的隔离级别和锁数据库事务在后端开发中占非常重要的地位,如何确保数据读取的正确性、安全性也是我们需要研究的问题。 ACID 首先总结一下数据库事务正确执行的四个要素(ACID):原子性(Atomicity):即事务是不可分割的最小工作单元,事务内的操作要么全做,要么全不做,不能只做一部分; 一致性(Consistency):在事务执行前数据库的数据处于正确的状态,而事务执行完成后数
阅读本文

数据库中的索引

总结: 1.什么是索引:数据库中的索引是某个表中一列或多列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。 2.分类: 唯一索引(UNIQUE):不允许两行具有相同的索引值(创建了唯一约束,系统将自动创建唯一索引) 主键索引:主键索引要求主键中的每个值是唯一的,(创建主键自动创建主键索引) 聚集索引(CLUSTERED):表中各行的物理顺序与键值的
阅读本文

通过工具,生成数据库的数据词典

如何将数据库表的定义导入Word呢。数据库设计好后,如果能把数据库表的详细定义导出来,对后面的开发非常的有好处。有什么简单的方法呢 ^_^     1、下载安装代码生成器:动软代码生成器    注释:官方网站下载的有bug,修补包:动软代码生成器mysql生产文档备注问题    http://download.csdn.net/download/liangjun_china/9927329
阅读本文

SQLserver本地数据库开发

远程端数据库中生成脚本  注意 远程端的数据库 是中文版的还是英文版的,一般我们装的是英文版的,   如果远程端数据库是中文版的,那么我们本地的是英文版,在生成的脚本那需要修改,同时去除相应的路劲代码。   修改为    如果我们想用vs自带的db作为本地数据库,那么我们用(localdb)MSSQLLocalDB 连接地址 断开网线(终止与远程端的连接)然后选择本地数据库,执行脚本在vs中连
阅读本文

手把手封装数据层之DataUtil数据库操作的封装

上一篇我们写完了数据库连接的封装没有看的请移步上一篇关于数据库连接的内容  这次我们讲数据库操作的封装。数据库的操作就是增删改查;心再大一点就可以直接分为查询和其他。因为查询是有返回对象的,而其他都不用返回值(事实是可以返回执行该语句所影响数据表中的行数,但是用处不大,仅做判断用)话不多说,看代码,代码比较长,但是我大概写了一些注释,有理解不到位的地方还请指正package com.yck.dat
阅读本文

自定义tt文本模板实现MySql指数据库中生成实体类

1.在项目中依次点击“添加”/“新建项”,选择“文本模板”,输入名称后点击添加。    2.在Base.tt中添加如下代码。<#@ template debug=“false“ hostspecific=“false“ language=“C#“ #> <#@ output extension=“.cs“ #> <#@ Assembly Name=“System.Core“ #> <#@ Asse
阅读本文

同步两个数据库的结构或者数据

需求:开发中常常需要将开发环境中的数据信息(表结构)同步到正式环境中的数据库,比如添加表和修改表等操作,通常是先记下,然后人工进行修改同步现在navicat for mysql这个工具提供了这个功能!测试功能:能检测到修改了,添加的字段,表添加。其他自行测试1。打开navicat 然后,点击“工具”,点击结构同步(数据同步可以去自行研究),如图2、如下设置回将test2修改信息同步到,比如我tes
阅读本文

数据库操作练习4

1.获取employees中的行数据,且这些行也存在于emp_v中 题目描述 存在如下的视图: create view emp_v as select * from employees where emp_no >10005; CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL, `birth_date` date NOT NULL
阅读本文

数据库(MySQL)的优化技巧

从表的结构出发: ① 比如一张表中存在userName,userPassword,还有你的家庭住址,个人喜好之类的信息。相比起来我们对userName,userPassword的操作更加的频繁,那其他的个人信息存在这张表上并不是一个明智的选择,可以选择把个人信息放在另外一张表上,这样会让你的表有更好的性能。这个叫做“垂直分割”。是一种把数据库中的表按列变成几张表的方法,这样可以降低表的复杂度和字段
阅读本文

数据库的设计思路和原则

通过在线考试系统对数据库的主外键关系有了新的认识 如上图所示,左边为管理员表,右边为面试系统表1.管理员系统在user表中nameid为主键,security表中nameid为user表nameid的外键。        当主键的元素有外键的时候,就不能删除(外键表可以随意删除)。当security表中有user表nameid的情况下,user表中的nameid是删不掉的。        外键有
阅读本文

数据库对m³等特殊符号的支持

目前我只遇到过m³这个特殊符号,会影响正常使用。比如,我在数据库中搜索:select * from table where container=‘10m³‘;即使数据库中对应的值,但也无法搜索出。我的解决方法是,在存入数据库前将m³转换为了立方米,再存入数据库。 当然,还有更好的解决方式:select * from table where container=N‘10m³‘;加上了N表示符合Uni
阅读本文