随笔分类 - 数据库
在面试中慢慢成长
摘要:一、基础1、说明:创建数据库 CREATE DATABASE database-name2、说明:删除数据库 drop database dbname3、说明:备份sql server --- 创建 备份数据的 device USE master EXEC sp_addumpdevice 'disk...
阅读全文
摘要:一、概念数据模型概述 概念数据模型也称信息模型,它以实体-联系(Entity-RelationShip,简称E-R)理论为基础,并对这一理论进行了扩充。它从用户的观点出发对信息进行建模,主要用于数据库的概念级设计。 通常人们先将现实世界抽象为概念世界,然后再将概念世界转为机器世界。换句话说,就是先将现实世界中的客观对象抽象为实体(Entity)和联系 (Relationship),它并不依赖于具体的计算机系统或某个DBMS系统,这种模型就是我们所说的CDM;然后再将CDM转换为计算机上某个 DBMS所支持的数据模型,这样的模型就是物理数据模型,即PDM。 CDM是一组严格定义的模型元素的集合,
阅读全文
摘要:1.表表达式 (1)将表作为一个源或将查询的一个结果集作为一个源,对源做处理,然后得到一个新的数据源,对其进行查询。 (2)表表达式放在from子句中 (3)派生表,将表的查询得到的结果集作为一个新的数据源,需要注意一下几点: 1)派生表必须有括号括起。 2)派生表需要取别名 3)派生表中的所有字段也要有别名(必须要给字段起名)。 4)能够作为派生表的只有结果集(游标不行)。 (4)写一段SQL语句,大家可以体会一下,这里就不提供数据库了。 1 select * from 2 3 ( 4 5 select s1.stuID, 6 7 s1...
阅读全文
摘要:1.子查询概念 (1)就是在查询的where子句中的判断依据是另一个查询的结果,如此就构成了一个外部的查询和一个内部的查询,这个内部的查询就是自查询。 (2)自查询的分类 1)独立子查询 ->独立单值(标量)子查询(=) 1 Select 2 3 testID,stuID,testBase,testBeyond,testPro 4 5 from Score 6 7 where stuID=( 8 9 select stuID from Student where stuName=’Kencery’10 11 ) ->独立...
阅读全文
摘要:1.Case函数的用法 (1)使用类似:switch-case与if-elseif。 (2)语法: case[字段] when表达式then显示数据 when表达式then显示数据 else显示数据 end (3)百分制转换素质教育 1)如图:我们要将显示的数据转换成ABCDE,规则是90分以上显示A,80分以上显示B,以此类推。 2)执行的SQL语句是: Select ID,TestBase, Case When testBase>=90 then ‘A’ When testBase>=80 then ‘B’ ...
阅读全文
摘要:MS SQL Server查询优化方法查询速度慢的原因很多,常见如下几种 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2、I/O吞吐量小,形成了瓶颈效应。 3、没有创建计算列导致查询不优化。 4、内存不足 5、网络速度慢 6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8、sp_lock,sp_who,活动的用户查看,原因是读写竞争资源。 9、返回了不必要的行和列 10、查询语句不好,没有优化 可以通过如下方法来优化查询 1、把数据、日志、索引放到不同的I/O设...
阅读全文
摘要:1.联合结果集(1) 简单的结果集联合 select FNumber,FName,Fage from T_Employee\ union select FidCardNumber,FName,Fage from T_Employee(2) 查询的基本原则是:每个结果集必须有相同的列数,没个结果集的列必须类型相同。 select FNumber,FName,Fage,FDepartment from T_Employee union select FidNumber,FName,Fage,’临时工,无部门’ from T_Employeeunion All(1) select FName,Fag
阅读全文
摘要:1数据库概述 (1) 用自定义文件格式保存数据的劣势。 (2) DBMS(DataBase Management System,数据库管理系统)和数据库,平时谈到”数据库”可能有两种含义:MSSQL Server,Oracle等某种DBMS;存放一堆数据库的 一个分类(CateLog)。 ...
阅读全文
摘要:SQL 不同于与其他编程语言的最明显特征是处理代码的顺序。在大数编程语言中,代码按编码顺序被处理,但是在SQL语言中,第一个被处理的子句是FROM子句,尽管SELECT语句第一个出现,但是几乎总是最后被处理。 每个步骤都会产生一个虚拟表,该虚拟表被用作下一个步骤的输入。这些虚拟表对调用者(客户端应用程序或者外部查询)不可用。只是最后一步生成的表才会返回 给调用者。如果没有在查询中指定某一子句,将跳过相应的步骤。下面是对应用于SQL server 2000和SQL Server 2005的各个逻辑步骤的简单描述。(8)SELECT(9)DISTINCT(11)(1)FROM[left_table
阅读全文
摘要:简介数据库范式在数据库设计中的地位一直很暧昧,教科书中对于数据库范式倒是都给出了学术性的定义,但实际应用中范式的应用却不甚乐观,这篇文章会用简单的语言和一个简单的数据库DEMO将一个不符合范式的数据库一步步从第一范式实现到第四范式。范式的目标应用数据库范式可以带来许多好处,但是最重要的好处归结为三点:1.减少数据冗余(这是最主要的好处,其他好处都是由此而附带的)2.消除异常(插入异常,更新异常,删除异常)3.让数据组织的更加和谐…但剑是双刃的,应用数据库范式同样也会带来弊端,这会在文章后面说到。什么是范式简单的说,范式是为了消除重复数据减少冗余数据,从而让数据库内的数据更好的组织,让磁盘空间得
阅读全文
摘要:突然想到面试的时候,谈数据库性能优化的问题, 知其然不知其所以然,今天刚好闲着无聊,就平时工作中会遇到的和网上看到的总结下,留着以后查看方便。 知识储备: 谈数据库优化前,先了解下现在的主流关系型数据库的优缺点: mssql就是sqlserver 优点:易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性价比等; 缺点:只能运行在微软的windows平台,没有丝毫的开放性可言; mysql 优点:轻量级,部署方便,开源,免费(技术服务是要收费的),除此之外,mysql几乎拥有了oracle提供的大部分功能,能够承载绝大多数...
阅读全文
浙公网安备 33010602011771号