1,数据模型:由数据结构、数据操作和数据的完整性约束组成。
2,在E-R概念模型中,信息由实体型、实体属性和实体间联系3种概念单元来表示。
3,第一范式(1NF):设R是一个关系模式,如果R中的每个属性都是不可分解的,则称R 是第一范式;
第二范式(2NF):如果关系模式R是第一范式,且每个非码属性都完全依赖于码属性,则称R是第二范式;
第三范式(3NF):如果关系模式是R第二范式,且没有一个非码属性传递依赖于码,则称R是第三范式。
4,Transact-SQL语句的分类如下所示:
○1变量声明Transact-SQL语言可以使用两类变量,局部变量和全局变量。
○2数据定义语言(Data Definition Language,DDL),用来建立数据库及数据库对象,绝大部分以Create开头,如Create Table等
○3数据控制语言(Data Control Language,DCL),用来控制数据库组件的存取访问、权限等命令,如GRANT、REVOKE等
○4数据操纵语言(Data Manipulation Language,DML),用来操纵数据库中数据的命令,如SELECT、UPDATE等
○5流程控制语言(Flow Control Language,FCL),用于控制应用程序流程的语句,如IF、CASE 等。
5,数据类型:
整数型:
bigint(8个字节,-263~263-1),
int(4个字节,-231~231-1),
smallint(2个字节,-215~215-1),
tingyint(1个字节,0~255);
小数数据类型:
decimal [(p[,s])] p精度:指定小数点左边和右边可以存储的十进制数字的最大个数。1~38 s小数位数:0~p之间的值;
numeric [(p[,s])]
近似数值型:
float[(n)] n:1~53 取值范围:-1.79308~1.79308
real 取值范围:-3.4038~3.4038
字符型(字符常量必须包含在单引号或双引号中):
char[(n)]:长度为n个字节的固定长度且非Unicode的字符数据,存储大小为n个字节。n 必须是一个介于1和8000之间的数值。
varchar[(n)]:长度为n个字节的可变长度且非Unicode的字符数据。n必须是一个介于1和8000之间的数值。存储大小为输入数据的字节的实际长度,而不是n个字节,所输入的数据字符长度可以为0
text:用来声明变长的字符数据。在定义的过程中,不需要指定字符的长度,最大长度为231-1(2147483647)个字符。当服务器代码页使用双字节字符时,存储量仍是2147483647字节。存储大小可能小于2147483647字节(取决于字符串)
逻辑数值型:
bit:可以存储整数型数据1、0或NULL。如果输入0以外的其他值,SQL Server均将其作为1看待。
货币型:
money:可存储的货币数值介于-263~263-1之间,精确到货币单位的万分之一,货币数据的存储精确度为4位小数,存储大小为8个字节;
smallmoney:可存储的货币数据值介于-214748.3648~214748.3647,货币数据的存储精确度为4位小数,精确到货币单位的万分之一,存储大小为4个字节。
Unicode字符型:
nvarchar:当列中各项所包含的Unicode字符数不同时(至多为4000)时使用;
nchar:当列中各项为一固定长度时(至多为4000个Unicode字符)时使用;
ntext:最大长度为230-1.当列中任意项超过4000个Unicode字符时使用。
它们分别与字符型的varchar[(n)]、char[(n)]和text类型相对应。使用Unicode字符时,应该在前面加一个标识符N,但是存储时并不存储该标识符。
日期时间类型:
datetime:从1753年1月1日到9999年12月31日的日期和时间数据,精确度为千分之三(3ms或0.003s)
smalldatetime:从1900年1月1日到2079年6月6日的日期和时间数据,精确到分钟。29.998或更低的smalldatetime值向下舍入为最接近的分钟,29.999s或更高的
smalldatetime值向上舍入为最接近的分钟。
例如:’4-16-2006 03:48:39.257’,’04/16/2006 13:30:20 PM’
SQL Server可以识别的日期格式有字母格式、数字格式和无分隔字符串格式3种。字符格式允许使用以当前语句给出的月全名(如April)或月的缩写(如Apr)来指定日期数据。字符格式的日期需要放在单括号内。可用的字符型日期格式分别为:
Apr[il] [15] [,] 2006
Apr[il] [15] [,] [20]06
Apr[il] 2006 [15]
[15] Apr[il] [,] 2006
15Apr[il] [,] [20] 06
15[20]06 Apr[il]
2006APR[IL] [15]
2006 [15]APR[IL
]
SQL Server可以识别以下数据格式。用单引号(’’)把每一种括起来。下面都是有效的时间格式:
14:30
14:30[:20:999]
14:30[:20.9]
4 AM
4 PM
[0]4 [:30:20:500]AM
二进制数据类型:
二进制数据由十六进制数表示。例如,十进制245等于十六进制数F5.在SQL Server 2000中,二进制数据使用binary、varbinary和image数据类型存储。
binary:在每行中都是固定的长度(最多为8KB)
varbinary:在每行中所包含的十六进制数字的个数可以不同(最多为8kb)
image:可以用来存储超过8KB的可变长度的二进制数据,如word文档、excel电子表格、位图图像、图形交换格式(GIF)文件和联合图像专家组(JPEG)文件。
其他数据类型:
○1cursor游标数据类型,用于创建游标变量或者定义存储过程的输出参数。它是唯一的一种不能赋值给表的列(字段)的基本数据类型。
○2Sql_variant数据类型,可以存储除了text、ntext、timestamp和自己本身以外的其他所有类型的变量
○3table数据类型,能够保存函数结果,并将其作为局部变量数据类型,可以暂时存储应用程序的结果,以便在以后用到。
○4uniqueidentifier数据类型,全局唯一标示符,是一个16字节长的二进制数据类型,是SQL Server根据计算机网络适配器和主机CPU时钟产生的唯一号码而生成的全局唯一标示符。唯一标示符代码可以通过调用NEWID函数或者其他SQL Server应用程序编程接口来获得。
○5timestamp时间戳数据类型,可以反映数据库中数据修改的相对顺序。
6,在查询分析器中输入如下命令并执行即可创建用户定义数据类型:
S p_addtype @typename=address , @phystype=’char(30)’ , @nulltype=’not null’
7,定义变量:
DECLARE @variable_name datatype[,…]
变量不能是text、ntext或image数据类型。变量最大长度为30个字符
赋值:
通常用SET和SELECT语句为变量赋值,其语法格式为:
SET @variable_name=expression
SELECT @variable_name=expression
在局部变量没有被赋值之前,其值是NULL,如果要在程序体重引用,特别是在循环结构中,必须先为其赋值。
全局变量通常用来跟踪服务器范围和特定会话期间的信息,不能明显地被赋值或声明。全局变量不能由用户定义,也不能由应用程序在处理器之间交叉传递信息。
8,SQL Server 2000中较常用的全局变量
9,SQL Server提供的比较运算符:多出!<(不小于) 和!>(不大于)两种
11,通配符及其含义:
12,字符串连接运算符为加号(+),可以将两个或多个字符串合并或连接成一个字符串。还可以连接二进制字符串。
13,运算符优先级
○1+(正)、-(负)、~(按位NOT)
○2*(乘)、/(除)、%(模)
○3+(加)、+(连接)、-(减)
○4=、>、<、>=、<=、<>、!=、!>和!<;比较运算符
○5^(位异或)、&(位与)、|(位或)
○6NOT
○7AND
○8ALL、ANY、BETWEEN、IN、LIKE、OR、SOME
unicode字符的种类有○9=(赋值)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论