看了一下SQL SERVER从入门到精通,是在网页上边下载的电子版,文字上边有很多错误,可能会对自己的理解造成一定的困难。不想讨论什么版的问题。
在SQL SERVER入门到精通这本书中首先讲到了SQL的发展和分类。SQL诞生于IBM加利福利亚洲的实验室中,最初被称作为结构化查询语言(Strctured Query Language),常被简称为Sequel,是一种非过程化语言(用户描述问题时不必指明解决问题的顺序,与具体过程无关,不会说明如何进行某样操作).
DR.CODD'S对关系新数据库系统(DBMS)的十二条规则:
0.关系型数据库必须通过关系来实现对数据库的完全管理。
1.所有在关系型数据库中的信息均可以在表中以数值的形式加以体现。
2.在关系型数据库中每一项数据均可以通过库名、键名和列名来准确指定。
3.关系型数据库系统必须对空值(未知和违规的数据)提供系统的支持,唯有独特的缺省值,而且具有独立域。
4.活动的、即时的数据联合-它的意思是在数据库中的数据应有逻辑表格的形式来表达,并且可以通过数据处理语言来访问。
5.完善的数据子语句-它应该至少支持一种有严格语法规则和功能完善的语言,并且应该支持数据库的定义、处理、完整性、权限以及事务等操作。
6.查看更新规则-所有理论上可以更新的视图可以通过系统操作来更新。
7.数据库中数据和插入、更新域删除操作-该数据库系统不仅要支持数据行的访问。还要支持数据行的插入、更新和删除操作。
8.数据库和物理独立性-当数据在物理存储结构上发生变化时应用程序在逻辑上不应受到影响。
9.数据库的逻辑独立性-当改变表的结构时应用程序在最大程度上不受影响。
10.有效独立性-数据库的语言必须有定义数据完整性规则的能力,数据应基似乎存储在线目录。
11.分布的独立性-当数据第一次发布或当它重新发布时应用程序应不收影响。
12.任何程序不可能使用低级的语言从而绕过数据库语言有效性规则定义。
开放型数据库连接(ODBC),为应用程序接口提供的访问下层数据库所用的函数库。特色在于不是针对任何一种数据库。
数据库中最常用的三个关键词 SELECT FROM WHERE.
查找不重复的数据 SELECT DISTINCT [字段] from [表名]。 SELECT等价于SELECT ALL。
字符拼接"||"。
UNION ALL合并两个表数据去掉重复。UNION和并两个表数据,不去掉重复。INTERSECT返回两个表中公有的行。
例:SELECT*FROM TABLE1
INTERSECT
SELECT*FROM TABLE2