sql server 基础笔记文档格式.docx

上传人:b****8 文档编号:22324127 上传时间:2023-02-03 格式:DOCX 页数:13 大小:17.76KB
下载 相关 举报
sql server 基础笔记文档格式.docx_第1页
第1页 / 共13页
sql server 基础笔记文档格式.docx_第2页
第2页 / 共13页
sql server 基础笔记文档格式.docx_第3页
第3页 / 共13页
sql server 基础笔记文档格式.docx_第4页
第4页 / 共13页
sql server 基础笔记文档格式.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

sql server 基础笔记文档格式.docx

《sql server 基础笔记文档格式.docx》由会员分享,可在线阅读,更多相关《sql server 基础笔记文档格式.docx(13页珍藏版)》请在冰豆网上搜索。

sql server 基础笔记文档格式.docx

while@i<

20

set@i=@i+1

if@i<

=19

continue

print@i

if@i=19

break

----try...catch用法

begintry

select1/0

endtry

begincatch

print'

打印错误'

endcatch

---raiserror的用法

raiserror('

生成一个错误消息'

11,1)

begincatch

selecterror_message()as错误消息,

error_severity()as严重级别,

error_state()asstate;

---使用sp_addmessage存储过程添加自定义错误

execsp_addmessage50001,15,N'

newuserdefinederrormessage!

'

us_english

新增用户自定义错误消息!

execsp_dropmessage50001,'

all'

---使用sp_altermessage存储过程修改用户定义错误消息

execsp_altermessage50001,'

with_log'

true'

---2005查看数据库信息

select*fromsys.databases

execsp_helpdb

--查看数据库空间使用情况

execsp_spaceused

--创建数据库时指定数据文件

createdatabasedb

on

primary(name=db,

filename='

C:

\programfiles\mircosoftSQLserver\mssql10.mssqlserver\mssql\data\db.mdf'

size=100MB

maxsize=200

filegrowth=20)

--解释下上面的参数:

--primary关键字,指定关联<

文件定义>

列表用于定义主要数据文件,一个数据库只能有一个主文件,如果没有指定primary,那么createdatabase语句中列出的第一个文件将成为主文件。

--name关键字,用于指定数据文件的逻辑名称

--filename关键字,指定数据文件的操作系统文件名。

其后面的参数是创建数据文件时定义的物理文件的路径名和文件名。

--size关键字,指定数据文件的大小。

--maxsize关键字,指定数据文件可以增长到的最大大小。

--unlimitted关键字,上面的例子中省略掉了。

若指定了,则代表指定定义的数据文件将增长到磁盘变满为止。

--filegrowth关键字,指定数据文件的增长增量,其值不能超过maxsize设置。

0表示不增长。

,默认值为MB。

如果指定为%,则增量大小为发生时文件大小的指定百分比,如果没有指定,默认值为10%。

--在创建数据库时指定文件组

primary(name=db1,

\programfiles\mircosoftSQLserver\mssql10.mssqlserver\mssql\data\db1.mdf'

filegrowth=20),

filegroupfilegroup1

(name=db2,

\programfiles\mircosoftSQLserver\mssql10.mssqlserver\mssql\data\db2.mdf'

--创建数据库时指定事务日志文件

logon(

name=dblog,

\programfiles\mircosoftSQLserver\mssql10.mssqlserver\mssql\data\db_log.ldf'

size=10MB

maxsize=20

filegrowth=2)

--获取约束信息

select*frominformation_schema.constraint_column_usage---可以获取指定数据库中的所有约束的信息以及约束与列的对应关系

select*frominformation_schema.constraint_table_usage---查询结果中只包含表和约束的对应关系,并没有约束对应的列信息

select*frominformation_schema.table_constraints---查询结果中只包含表和约束的对应关系,并没有约束对应的列信息

select*frominformation_schema.key_column_usage---可以获取指定数据库中的所有键约束的列信息,包括主键约束中的主键列,唯一约束中的唯一键列和外键约束中的引用列

select*fromsys.key_constraints----获取约束信息

select*fromsys.foreign_keys--获取表中的外键约束

select*fromsys.foreign_key_columns--获取外键约束的列信息

select*frominformation_schema.referential_constraints--获取外键约束信息

select*frominformation_schema.check_constraints--获取检查约束信息

---创建主键约束,唯一约束,检查约束

createtabletest

idint,

testnamevarchar(50),

sexbit,

classvarchar(50),

scorefloatdefault(0)

constraintpk_testprimarykey/*这里可以指定是创建聚集或非聚集索引clustered|nonclustered可选项*/(id)

constraintix_testunque(testname)

constraintck_testcheck/*这里可以使用notforreplication可选项,用于指定当从其他表中复制数据时,不检查约束条件*/(score>

=0)

go

altertabletb

addconstraintpk_tbprimarykeynonclustered(id)

addconstraintck_sexcheck(sex='

男'

orsex='

女'

---创建和使用默认约束

addconstraintde_testdefault'

test'

fortest---在表tb的列test的默认约束为'

--创建和使用外键约束

addconstraintfk_tb_tb1foreignkey(id)

referencestb1(id)

--使用dbcccheckident检查和设置表的标识值

createtabletb

idintprimarykeyidentity,

namevarchar(50)

insertintotb

select'

a'

unionall

b'

unionall

c'

d'

dbcccheckident(tb,noreseed)

deletefromtbwhereid>

2

--删除记录后,表tb只剩下两条记录了,但是此时表tb的标识值仍为4,可以用下面的语句重置标识值为2

dbcccheckident(tb,reseed,2)

/*检查标识信息:

当前标识值'

4'

,当前列值'

DBCC执行完毕。

如果DBCC输出了错误信息,请与系统管理员联系。

(2行受影响)

检查标识信息:

2'

*/

droptabletb

---视图withencryption的用法

createview员工信息简历表

withencryption----这样就创建了加密视图

as

select

e.emp_name,e.sex,e.title,d.dep_name

from

employeeseinnerjoindepartmentsd

on

e.dep_id=d.dep_id

---获取表和视图信息

select*frominformation_shcema.tables---查看当前数据库中当前用户有权限查看的所有表和视图信息

---获取视图信息

select*frominformation_schema.views

---获取列信息

select*frominformation_schema.columns

如果需要查看指定表或视图的列情况,可以使用下面的语句。

select

*

from

information_schema.columns

where

table_catalog='

数据库名'

and

table_name='

表名'

---获取视图中列的信息

select*frominformation_schema.view_column_usage

select*fromsys.columns

将sys.columns与系统视图sys.objects和sys.types关联,获得列的一些详细信息,例如

select

o.nameas表名,

c.nameas列名,

t.nameas数据类型,

c.max_lengthas长度,

c.precisionas精度,

c.scaleas小数位数,

casec.is_nullablewhen1then'

是'

else'

否'

endas是否允许空,

casec.is_identitywhen1then'

endas标识列,

sys.columnscinnerjoinsys.objectso

o.object_id=c.object_id

innerjoin

sys.typest

c.system_type_id=t.system_type_id

o.name='

andt.name<

>

sysname'

orderby

c.column_id

--获取视图中包含表的信息

select*frominformation_schema.view_table_usage

--获取所有数据库对象的信息

select*fromsys.objects

--绑定规则

execsp_bindrule'

规则名'

'

对象名'

例如

sexrule'

employees.sex'

--解除绑定规则

execsp_unbindrule'

--删除规则

在删除规则前,需要调用sp_unbindrule存储过程解除该规则的绑定,例如

droprulesexrule

--查看表的索引信息

execsp_helpindextb

--结合sys.indexes和sys.index_columns,sys.objects,sys.columns查询索引所属的表或视图的信息

i.nameas索引名,

i.type_descas类型描述,

is_primary_keyas主键约束,

is_unique_constraintas唯一约束,

is_disableas禁用,

sys.objectsoinnerjoinsys.indexes

i.object_id=o.object_id

innerjoin

sys.index_columnsic

ic.index_id=i.index_idandic.object_id=i.object_id

sys.columnsc

ic.columns_id=c.columns_idandic_object_id=c.object_id

--查询索引的键和列信息

i.nameas索引名,

c.nameas字段编号,

sysindexesiinnerjoinsysobjectso

i.id=o.id

sysindexkesk

o.id=k.idandi.indid=k.indid

syscolumnsc

c.id=i.idandk.colid=c.colid

o.name='

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1