易截截图软件、单文件、免安装、纯绿色、仅160KB

《sql 语言艺术》 概要

http://www.oreilly.com/catalog/artofsql (原书)
http://www.oreilly.com.cn/book.php?bn=978-7-121-05834-9 (中文版)
  数据库技术是企业信息化开发的基础。在制造业信息化领域从业多年,自己对这块知识却一直零碎杂乱,应该理顺思路,为架构设计的目标建立基础。
       此书以明确应用原则,讨论各种SQL应用场景,利于实践。
第一章 制定计划:为性能而设计
程序首要目标:满足业务需求。设计SQL支持关系模型(表内不同字段间存在”关系“)。
关系就是表,不同字段联系在一起定义关系。
关系理论的关键原理:关系不包含重复数据,且记录之间没有顺序。
总结:建模是业务需求具体化的过程。
规范化的重要性--使混沌变得有序。
满足第三范式3NF。
真正的风险是数据的不一致性,难于编写的数据输入控制代码、性能、BUG以及模型无法演进,
规范化会增加上述风险几率。
松散、不同类型的信息组织,便于运用的数据模型,步骤:
第一步:确保原子性(属性)。无法再分割,仅把原子性属性定义为表中的字段。
如果where子句中必须引用属性的一部分,说明不属性未达到原子性级别,丧失两个优点:
1高效搜索能力,因常规索引以具有原子性的值作为键(全文索引不能实时更新)。
2由数据库保证的数据正确性,使用函数检查 将 复杂难维护。
还必须精通字符串函数,要避免多值塞进同一个字符串中。
原则上如果组织数据,实际上取决于如果使用数据。必须考虑业务需求,因为它决定原子级的地址属性,根据业务需求分析适用性。
下一步是确定唯一标识各记录的主键(复合键常见)。尽量使用实际意义的主键,而不是序列数(键的技术代用品)。
一旦所有属性都具有原子性、具确定了键,数据就符合1NF。
第二步:检查对键的完全依赖性
属性不是键确定行所特有的,属性部分依赖于键(复合键)。
影响:
数据冗余,公共属性会被重复保存,两个问题:
一。冗余数据容易引起数据不一致,修改更费时。
二。浪费存储空间。
查询性能,全表扫描
为消除键的部分依赖性,必须建立新表,新表的键都是原始表的键的一部分。
去除只依赖部分键的属性后,表就符合2NF。
第三步:检查属性独立性
除主键所包含的属性外,不能根据任何其他属性确还一个属性的值。此数据集满足3NF。
必须对2NF的数据集中的每一对属性检查,确定3NF。
不符合3NF的风险和2NF相同。
3NF重要原因:
合理规范化的模型可应


相关文档:

航空公司管理系统(VC++ 与SQL 2005)

系统环境:Windows 7
软件环境:Visual C++ 2008 SP1 +SQL Server 2005
本次目的:编写一个航空管理系统
      这是数据库课程设计的成果,虽然成绩不佳,但是作为我用VC++ 以来编写的最大程序还是传到网上,以供参考。用VC++ 做数据库设计并不容易,但也不是不可能。以下是我的程序界面,后面 ......

典型的行转列的SQL语句

以ORACLE数据库为例, 将tab表中的tname字段转成以逗号分隔的字符串
SQL如下:
select substr(max(sys_connect_by_path(tname, ',')), 2)
from (
  select b.tname, b.t1, lead(b.t1, 1) over (order by b.t1) t2
  from (
       select a.tname, row_number() over (orde ......

Sql语句创建表

新建表:
create table [表名]
(
[自动编号字段] int IDENTITY (1,1) PRIMARY KEY ,
[字段1] nVarChar(50) default \'默认值\' null ,
[字段2] ntext null ,
[字段3] datetime,
[字段4] money null ,
[字段5] int default 0,
[字段6] Decimal (12,4) default 0,
[字段7] image null ,
)
删除表:
Drop table [ ......

Sql Server 基本函数

1.字符串函数
长度与分析用
datalength(Char_expr) 返回字符串包含字符数,但不包含后面的空格
substring(expression,start,length) 不多说了,取子串
right(char_expr,int_expr) 返回字符串右边int_expr个字符
字符操作类
upper(char_expr) 转为大写
lower(char_expr) 转为小写
space(int_expr) 生成int_exp ......

SQL操作2

下列语句部分是Mssql语句,不可以在access中使用。
SQL分类: 
DDL—数据定义语言(Create,Alter,Drop,DECLARE) 
DML—数据操纵语言(Select,Delete,Update,Insert) 
DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)
首先,简要介绍基础语句:
1、说明:创建数据库
Create&nb ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号