(1)文本类型: 字符数据包含任意字母、符号或数字字符的组合
char: 固定长度的非Unicode字符数据,最大长度为8000个字符
varchar: 可变长度的非Unicode数据,最大长度为8000个字符
text: 存储长文本信息,最大长度为2^31-1(2147483647)个字符
nchar: 固定长度的Unicode数据,最大长度为4000个字符
narchar: 可变长度的Unicode数据,最大长度为4000个字符
ntext: 存储长文本信息,最大长度为2^30-1(1073741823)个字符
(Unicode是国际组织制定的可以容纳世界上所有文字和符号的字符编码方案,编码数据长度是非编码数据的两倍)
(2)整数类型
bigint: 占用8个字节,可表示范围-2^63~2^63-1之间的整数
int: 占用4个字节
smallint: 占用2个字节
tinint: 占用1个字节,可表示0~255之间的整数
(3)精确数字类型
decimal: -10^38~10^38-1之间固定精度和小数位的数字
numeric(常用): 功能等同于decimal
写法:
decimal(整数,小数)和numeric(整数,小数)——若不指定位数,默认18位整数,0位小数:
(4)近似数字(浮点)类型(很少用,可以用numeric替代)
float[(n)]: 表示范围-179E+308~179E+308
n 表示精度,在1-53之间取值,当n在1~24之间时,精度为7位有效数字,占用4个字节;当n在25~53之间时,精度为15位有效数字,占8个字节。
real: 表示范围-340E+38~340E+38占用4个字节,相当于float(24)
(5)日期类型
datetime: 允许范围1753-1-1至9999-1-1
smalldatetime(常用): 允许范围1900-1-1至2079-6-6
时间精度不同: datetime精确到3%秒;smalldatetime精确到1分钟
格式说明:
分隔符数字方式: 2013-08-20 或 08/20/2013
纯数字方式: 08202013
英文数字类型: Aug 20,2013
注意问题: 日期在使用的时候需要使用单引号' ' 括起来
(6)货币类型
money: 货币数值介于-2^63与2^63-1之间,精确到货币单位的千分之一
smallmoney: 货币数据介于-2147483648与2147483648之间,精确到货币单位的千分之十
(7)位类型
bit: 表示“是/否”类型的数据(1/0,true/false)
(8)二进制类型
binary: 固定长度的二进制数据,最大8000个字节
vbinary: 可变长度的二进制数据,最大8000个字节
image: 可变长度的二进制数据,最大长度2^31个字节—— 应用场合: 可存储
在百度上直接搜索“SqlServer系统存储过程”,呵呵呵~
sp_databases
列出服务器上的所有数据库
sp_server_info
列出服务器信息,如字符集,版本和排列顺序
sp_stored_procedures
列出当前环境中的所有存储过程
sp_tables
列出当前环境中所有可以查询的对象
sp_password
添加或修改登录帐户的密码
sp_configure
显示(不带选项)或更改(带选项)当前服务器的全局配置设置
sp_help
返回表的列名,数据类型,约束类型等
sp_helptext
显示规则,默认值,未加密的存储过程,用户定义的函数,触发器或视图的实际文本
sp_helpfile
查看当前数据库信息
sp_dboption
显示或更改数据库选项
sp_detach_db
分离数据库
sp_attach_db
附加数据库
sp_addumpdevice
添加设备
sp_dropdevice
删除设备
sp_pkeys
查看主键
sp_fkeys
查看外键
sp_helpdb
查看指定数据库相关文件信息
sp_addtype
自建数据类型
sp_droptype
删除自建数据类型
sp_rename
重新命名数据库
sp_executesql
执行SQL语句
sp_addlogin
添加登陆
sp_droplogin
删除登录
sp_grantdbaccess
把用户映射到登录,即添加一个数据库安全帐户并授予塔访问权限
sp_revokedbaccess
撤销用户的数据访问权,即从数据库中删除一个安全帐户
sp_addrole
添加角色
sp_addrolemember
向角色中添加成员,使其成为数据库角色的成员
sp_addsrvrolemember
修改登录使其成为固定服务器角色的成员
sp_grantlogin
允许使用组帐户或系统用户使用Windows身份验证连接到SQL
sp_defaultdb
修改一个登录的默认数据库
sp_helpindex
用于查看表的索引
sp_cursoropen
定义与游标和游标选项相关的SQL语句,然后生成游标
sp_cursorfetch
从游标中提取一行或多行
sp_cursorclose
关闭并释放游标
sp_cursoroption
设置各种游标选项
sp_cursor
用于请求定位更新
sp_cursorprepare
把与游标有关的T-SQL语句或批处理编译成执行计划,但并不创建游标
sp_cursorexecute
从由sp_cursorprepare创建的执行计划中创建并填充游标
sp_cursorunprepare
废弃由sp_cursorprepare生成的执行计划
sp_settriggerorder
指定第一个或最后一个激发的、与表关联的AFTER 触发器。在第一个和最后一个触发器之间激发的AFTER 触发器将按未定义的顺序执行
sp_start_job
立即启动自动化任务
sp_stop_job
停止正在执行的自动化任务
--建表
CREATE TABLE ko
(BeginTime SMALLDATETIME,
endTime SMALLDATETIME ,
CONSTRAINT ck CHECK(endTime>=beginTime))
--如果表已经建好了 可以这样:
alter table ko
add constraint ck CHECK(endTime>=beginTime)
数据库完整性(Database
Integrity)是指数据库中数据的正确性和相容性,其目的是防止垃圾数据的进出。数据库完整性由各种各样的完整性约束来保证,因此可以说数据库完整性设计就是数据库完整性约束的设计。加在数据库之上的语义约束条件就是数据库完整性约束条件。
完整性约束条件作用对象可以使关系、元组、列三种。
●列约束主要是列的数据类型、取值范围、精度、排序等约束条件。
●元组的约束是元组中各个字段间的联系的约束。
●关系的约束是若干元组间、关系集合上以及关系之间的联系的约束。
完整性约束条件涉及这三类对象,其状态可以是静态的,也可以是动态的。所谓静态约束是指数据库每一确定状态时的数据对象所应满足的约束条件。它是反映数据库状态合理性的约束,这是最重要的一类完整性约束。
动态约束是指数据库从一种状态转变为另一种状态时,新、旧值之间所应满足的约束条件。
完整性约束条件可分为以下六类:
●静态列级约束
●静态元组约束
●静态关系约束
●动态列级约束
●动态元组约束
●动态关系约束
1
静态列级约束是对一个列的取值域的说明,包括以下几个方面:
(1)对数据类型的约束,包括数据的类型、长度、单位、精度等;
(2)对数据格式的约束。例如规定日期的格式为YYYY-MM-DD;
(3)对取值范围或取值集合的约束。例如规定学生的成绩取值范围为0~100;
(4)对空值的约束,规定哪些列可以为空值,哪些列不能为空值;
2
静态元组约束就是规定元组的各个列之间的约束关系。例如,订货关系中包含发货量、订货量等列,规定发货量不得超过订货量。
3
静态关系约束是指在一个关系的各个元组之间或者若干关系之间存在的约束。常见的静态约束有:
(1)实体完整性约束;
(2)引用完整性约束;
(3)函数依赖约束;大部分函数依赖约束都在关系模式中定义。
(4)统计约束;即字段值与关系中多个元组的统计值之间的约束关系。例如,规定部门经理的工资不得高于本部门职工平均工资的5倍,不得低于本部门职工平均工资的2倍。
4
动态列级约束是修改列定义或列值时应满足的约束条件,包括下面两方面:
(1)修改列定义时的约束。例如,将允许空值的列改为不允许空值时,如果该列目前已存在空值,则拒绝这种修改。
(2)修改列值时的约束。修改列值时有时需要参照其旧值,并且新旧值之间需要满足某种约束条件。例如,职工调整后的工资不得低于其调整前的原来工资;职工婚姻状态的变化只能是由未婚到已婚、已婚到离异、离异到再婚等几种情况。
5
动态元组约束是指修改元组的值时元组中各个字段间需要满足某种约束条件。例如,职工工资调整时新工资不得低于原工资+工龄15等。
6
动态关系约束是加在关系变化前后状态上的限制条件。例如,在集成电路芯片设计数据库中,一个设计中用到的所有单元的工艺必相同,因此,在更新某个设计单元时,设计单元的新老工艺必须保持一致。
以上就是关于二、数据库与数据表--2、SQLServer的数据类型全部的内容,包括:二、数据库与数据表--2、SQLServer的数据类型、如果希望查看数据库的属性,可以使用的系统存储过程是哪个、SQLserver中时间约束等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)