数据库整理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

命令行进入SQLCMD:

sqlcmd –s machineName\instanceName

使用数据库:

USE db_name

GO

删除数据库:(不能删除系统数据库)

USE tempdb

GO

SELECT name,state_desc

FROM sys.databases

WHERE name=’db_name’

GO

DROP DATABASE db_name1,db_name2,…

GO

更改数据库文件

ALTER DATABASE db_name

{ADD FILE-- 指定要添加的文件

|ADD LOG FILE-- 指定要添加的日志文件| REMOVE FILE logical_file_name -- 指定要删除的数据文件名| MODIFY FILE-- 指定要更改的文件

| MODIFY NAME= new_dbname -- 重命名数据库

}

修改数据库属性:

ALTER DATABASE db_name

SET ANSI_NULL_DEFAULT ON

更名:

USE tempdb

GO

ALTER DATABASE db_name

SET SINGLE_USER

ALTER DATABASE db_test

MODIFY NAME=db_new_name

ALTER DATABASE db_new_name

SET MULTI_USER

更改数据库文件组:

ALTER DATABASE db_name

ADD FILEGROUP filegroup_name [CONTAINS FILESTREAM]

|REMOVE FILEGROUP filegroup_nam--(要先删除组中的文件)|[MODIFY FILEGROUP filegroup_name

{|DEFAULT|NAME=new_filegroup_name}]

注意:要更改为默认文件组,文件组中至少要包含一个文件。

分离

[ , [ @skipchecks= ] 'skipchecks' ]

[ , [ @keepfulltextindexfile = ] 'KeepFulltextIndexFile' ]

附加

CREATE DATABASE db_name

ON [,..n]

FOR {ATTACH|ATTACH_REBUILD_LOG}

系统数据库

master数据库记录了SQL SERVER的数据、端点、服务器和系统配置信息。还有所有数据库及其数据库文件的位置,以及实例的初始化信息。

msdb数据库是SQL SERVER代理用于计划警报和作业及其它功能。其属性主要包括msdb数据文件、日志文件的初始值。

model数据库是创建其他用户数据库的模板。

resource数据库具有只读的特性。其中包含了SQL SERVER所用到的所有系统对象(系统视图)。一般不要对resource 数据库进行修改。不过,用户可以移动reource数据库。用户可用sys.objects系统视图查看系统对象。

tempdb数据库是一个全局临时资源。tempdb可以与所有连接共用。

表创建

USE db_name

GO

IF OBJECT_ID('.')IS NOT NULL

DROP TABLE.

GO

CREATE TABLE table_name

(

[NULL | NOT NULL]

[PRIMARY | UNIQUE]

[FOREIGN KEY [(column_name)]]

REFERENCES ref_table [(ref_column)]

...

......

[…n]

)

GO

也可以通过SELECT INTO创建表:

SELECT col1,col2,col3 INTO tb_name1 FROM tb_name2

表的修改

ALTER TABLE table_name

ADD [ ]

[PRIMARY KEY | CONSTRAINT]

[FOREIGN KEY (column_name) REFERENCES ref_table(ref_column)]

DROP [CONSTRAINT] constraint_name |COLUMN column_name

ALTER TABLE

ADD CONSTRAINT

()

sys.key_constraints

DROP TABLE table_name

系统表

系统表在性能和安全性上都存在问题,SQL Server的后续版本中将逐步删除系统表,因此最好使用目录视图来获取系统级信息。

用户无法对系统表进行修改操作,只有通过专用的管理员连接(DAC)才能直接查询和修改系统表。

临时表

存储在tempdb中

本地临时表:本地且对创建者可见,其它用户不可见,当用户断开连接时,系统自动删除之。

USE db_name

GO

CREATE TABLE #tb_name()

全局临时表:对所有用户可见,当使用安的所有用户断开连接时,系统自动删除之。

USE db_name

GO

CREATE TABLE ##tb_name()

专用的管理员连接

通过DAC,用户可以直接修改系统表。DAC需要用户到服务器现场方可操作。

SQLCMD –E –S machine_name\instanceName –A

其中-A表示使用DAC连接,-E建立信任连接(适用于Windows身份验证模式),-S表示连接到machine_name上的instanceName实例。

注意:在使用DAC之前,要打开SQL Server Browser服务。

数字类型

,默认18;S是小数位,要:0~P.默认为0.货币型精确为4位小数。

精确与存储字节数

逻辑数值型

bit(可以存储整型数据1、0或NULL。如果输入0以外的其他值时,SQL Server均将它们当作1看待)

近似数字类型(浮点数据)

REAL (精度7位)

FLOAT(建议使用):(精度15位)FLOAT[(n)]. n是尾数(科学计数法)

相关文档
最新文档