25、 char、varchar、nchar、nvarchar、nvarchar2的区别
摘要:CHAR vs VARCHAR, NCHAR vs NVARCHAR CHAR, NCHAR : 固定长度(最多8000个英文,4000个汉字) 如定义CHAR(5),无论使用字符多少都会占用5字节 VARCHAR, NVARCHAR : 可变长度(最多8000个英文,4000个汉字)如定义VARC
阅读全文
24、Index
摘要:create INDEX projects_creater_ix on projects(creater) Drop INDEX projects_creater_ix
阅读全文
23、Constraint and delete
摘要:NOT NULL UNIQUE:CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName) PRIMARY KEY:CONSTRAINT pk_PersonID PRIMARY KEY (Id_P) FOREIGN KEY:FOREIGN KEY (Id_P) REF
阅读全文
22、design mode : Normalization
摘要:1nf : atomic 2nf : partial dependencies 3nf : transitive dependency
阅读全文
20、Outer Apply 和 Cross Apply
摘要:1.場合 select...caseが複雑の時 2.運用方法 虽然apply性能低,但是也有其用武之地,当需要按照顺序进行连接时,apply是最好的选择。
阅读全文
19、数据库设计的三大范式
摘要:为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。 在实际开发中最为常见的设计范式有三个: 1.第一范式(确保每列保持原子性) 第一范式是最基本的范式。如果数
阅读全文
18、SQL提高篇(变量的使用 拓展)
摘要:一 例题 例题用表:[cost] 注:费用类型个数不定 将上图所示的表根据type列的类型转为下图样式 *用变量将类型名分组动态提取的方法: 查询的结果如下: 解法: 1、普通变量查询法: --通过语句拼接实现-- 1)声明变量 2)先查询出一个以"[类型x单价],[类型x用量],[类型x总价]"为
阅读全文
17、SQL基础整理(事务)
摘要:事务事务==流程控制 确保流程只能成功或者失败,若出现错误会自动回到原点例:begin traninsert into student values('111','王五','男','1999-09-09','95033')if @@ERROR>0goto tranrollback--直接到tranr...
阅读全文
16、SQL基础整理(触发器.方便备份)
摘要:触发器(方便备份)本质上还是一个存储过程,只不过不是通过exec来调用执行,而是通过增删改数据库的操作来执行(可以操作视图)全部禁用触发器alter table teacher disable trigger all全部开启触发器alter table teacher enable trigger ...
阅读全文
15、SQL基础整理(视图)
摘要:视图即虚拟表系统-右键-新建视图编辑前200行select *from studentscore代码创建法:create view studentscoreasselect student.sno,sname,ssex,sbirthday,class,cno,degree from studentj...
阅读全文
14、SQL基础整理(存储过程)
摘要:存储过程procedure(proc)数据库—可编程性—存储过程新建存储过程:create proc firstprocasselect *from fenshugo执行存储过程:存储过程—右键—执行存储过程declare @fanhuizhi intexec @fanhuizhi = firstp...
阅读全文
13、SQL基础整理(流程控制begin……end)
摘要:流程控制begin ……end将一个语句块包含起来,中间可以写任何语句格式:begin--开始 select *from studentend--结束ifdeclare @bianliang intset @bianliang = 10if @bianliang>10 print '你好'else ...
阅读全文
12、SQL基础整理(运算符与优先级)
摘要:运算符+ - * / %(取余),赋值运算符 =declare @jia intset @jia = 1+1print @jiadeclare @jia intset @jia = 10%3print @jia比较运算符> ,=, (不等于),!=, ! ?逻辑运算符and, or, all(条件全...
阅读全文
11、SQL基础整理(变量)
摘要:变量定义变量:declare @hello varchar(20)赋值:set @hello = ‘你好’select(结果框显示)/print(消息框显示) @hello*三行必须同时运行declare @hello varchar(20)set @hello = '销售部'select *fro...
阅读全文
10、SQL基础整理(约束2)
摘要:约束 除主键约束、外键约束外 唯一约束(主键列、索引列的候选索引) 设计---右键---索引/键---需要修改的列----是唯一的----忽略重复键 代码方式: cid varchar (20) unique 联合主键 所谓主键就是可以唯一确定该行数据,由此可以知道,当一个字段不能决定该行的值时,就
阅读全文
9、SQL基础整理(两表连接exists,join on,union)*Oracleも含む(INTERSECT&MINUS)
摘要:exists的用法 select *from haha where exists (select *from bumen where bumen.code = haha.bumen and bumen.name = '销售部' )and age>35 (运行方法为逐条查询) select name,
阅读全文
8、SQL基础整理(约束)
摘要:约束主键约束防止在新增数据时出错,有约束性,起唯一标志的作用,在新增条目的时候防止不慎添加重复内容(不允许有null值)1、 右键—设计—设置主键2、在创建表格时设置code int primary key,3、可以设置自增长的功能 code int primary key identity(1,1...
阅读全文
7、SQL基础整理(子查询)
摘要:子查询(用来进行两个或以上表之间的查询)1、首先新建一个bumen表和一个haha表,填充数据2、利用两表进行子查询:--部门人数大于5的部门中最大年龄的人的信息---select bumen as 部门,COUNT(*)as 人数 from haha group by bumen having C...
阅读全文
6、SQL基础整理(日期时间数据类型,转换函数)
摘要:日期时间数据类型*系统常量:@@DATEFIRST(返回当前时间)DATEADD增加时间语法:DATEADD (datepart , number , date )select DATEADD(YEAR,2,'2013-11-2')DATEDIFF两个日期之间的距离select DATEDIFF(Y...
阅读全文
|
|