现在的位置: 首页 > 综合 > 正文

表的创建、删除、修改

2013年06月19日 ⁄ 综合 ⁄ 共 3626字 ⁄ 字号 评论关闭
 

a.利用企业管理器创建表

在企业管理器中,展开指定的服务器和数据库,打开想要创建新表的数据库,右击表对象,并从弹出的快捷菜单中选择“新建表”,出现对话框。

在对话框,定义的属性说明如下:

默认值:指定列的默认值。除定义为timestamp或带IDENTITY属性的列以外的任何列。删除表时,将删除默认值定义。只有常量值(如字符串)、SQL Server内部函数(如SYSTEM_USER())或NULL值可以用作默认值。

精度和小数位数:精度是列的总长度,包括整数部分和小数部分的长度之和,但不包括小数点;小数位数指定小数点后面的长度。

标识:指定列是否是标识列。一个表只能创建一个标识列。不能对标识列使用绑定默认值和DEFAULT约束。必须同时指定种子和增量,或者两者都不指定。默认值(1,1)。能够成为标识列的数据类型有intsmallinttinyintnumericdecimal等系统数据类型;如果其数据类型为numericdecimal,不允许出现小数位数。

标识种子:指定标识列的初始值。

标识递增量:指定标识列的增量值。

RowGuid指定列是否使用全局唯一标识符。

公式:用于指定计算列的列值表达式。

排序规则:指定列的排序规则。

注意:在数据库中表名必须是唯一的,但是如果为表指定了不同的用户,就可以创建多个相同名称的表。

b.利用T-SQL语句创建表

CREATE TABLE

[ database_name.[ owner ] .| owner.]

table_name

{ < column_definition >| column_name AS computed_column_expression|< table_constraint >} […n]

[ ON { filegroup | DEFAULT } ]

[ TEXTIMAGE_ON { filegroup | DEFAULT } ]

< column_definition > ::= { column_name data_type }

[ COLLATE < collation_name > ]

[ [ DEFAULT constant_expression ]

| [ IDENTITY [ seed , increment [ NOT FOR REPLICATION ] ] ] ]

[ ROWGUIDCOL]

[ < column_constraint > ] [ ...n ]

< column_constraint > ::=[ CONSTRAINT constraint_name ]

{ [ NULL | NOT NULL ]

| [ { PRIMARY KEY | UNIQUE }

[ CLUSTERED | NONCLUSTERED ]

[ WITH FILLFACTOR = fillfactor ]

[ON {filegroup | DEFAULT} ] ] }

|FOREIGN KEY [column [,…n]]

REFERENCES ref_table [ ref_column [,…n] ] [NOT FOR REPLICATION]

| CHECK [ NOT FOR REPLICATION ]

logical_expression }

1:在GZGL中创建一个JBXX的数据库表

use  GZGL

go

create  table  jbxx1

(employee_id  char(6)  not  null,

name  char(10)  not  null,

birthday  datetime  not  null,

sex  char(2)  default‘男’)

go

(一) 创建、删除和修改约束

a.利用企业管理器

在企业管理器中,右击要操作的数据表,从弹出的快捷菜单中选择“设计表”选项,出现设计表对话框,选择要设定为主键的字段,如果有多个字段,按住Ctrl键的同时,用鼠标单击选中的某个字段,从弹出的快捷菜单中选择“设置主键”选项;在属性对话框中的“索引/键”选项卡中设置。

b.利用T-SQL语句

CONSTRAINT  constraint_name

  PRIMARY  KEY/UNIQUE

  [CLUSTERED|NONCLUSTERED]

  column_name[,…n]

参数说明:

constraint_name约束名称,在数据库中应该唯一,不指定,系统会自动生成一个约束名。

[CLUSTERED|NONCLUSTERED]索引类型,聚族索引或非聚族索引,CLUSTERED为默认值。

column_name用于指定主键的列名。最多由16个列组成。

1:GZGL中创建一个JBXX的数据库表,字段employee_id具有唯一性

use  GZGL

go

create  table  jbxx2

(employee_id  char(6)  not  null  primary key,

name  char(10)  not  null,

birthday  datetime  not  null,

sex  char(2)  default‘男’

constraint uk_name unique(employee_id)

constraint chk_sex check(sex in (‘男’,‘女’)))

go

(二) 增加、删除和修改字段

a.利用企业管理器

在企业管理器中,右击要操作的数据表,从弹出的快捷菜单中选择“设计表”选项,出现设计表对话框,在对话框可完成增加、删除和修改字段的操作。

c.利用T-SQL语句

ALTER TABLE table
{ [ ALTER COLUMN column_name
    { new_data_type [
precision [ , scale ] ]
         [ COLLATE < collation_name > ]
         [ NULL | NOT NULL ]
         | {ADD | DROP } ROWGUIDCOL } ]
 | ADD

{ [ < column_definition > ]
| column_name AS computed_column_expression
 } [ ,...n ]
 | [ WITH CHECK | WITH NOCHECK ] ADD
  { < table_constraint > } [ ,...n ]

| DROP
 { [ CONSTRAINT ] constraint_name
    | COLUMN column } [ ,...n ]
  | { CHECK | NOCHECK } CONSTRAINT
    { ALL | constraint_name [ ,...n ] }
 | { ENABLE | DISABLE } TRIGGER
   { ALL | trigger_name [ ,...n ] }
}

例如:

alter  table  jbxx2  alter  column  name  char(8)

alter  table  jbxx2  drop  column  birthday

alter  table  jbxx2  add  memo  varchar(200)

alter  table  jbxx1  add constraint PK_em_id primary key(employee_id)

alter  table  jbxx1  add constraint sex default’’for sex

(三) 查看表格

a.利用企业管理器

在企业管理器中,右击要操作的数据表,从弹出的快捷菜单中选择“属性”选项,出现表属性对话框,在对话框可显示对表格的定义。

在企业管理器中,右击要操作的数据表,从弹出的快捷菜单中选择“打开表”选项,该选项有三个子项:“返回所有行”:显示所有记录;“返回首行”::显示前N条记录,N可自己输入;“查询”:查询具体某行记录。

b.利用T-SQL语句

语法:sp_help [[@objname=]name]

系统存储过程Sp_help可以提供指定数据库对象的信息,只用于当前数据库。其中[[@objname=]name]字句用于指定对象的名称,如果不指定对象名称,sp_help存储过程就会列出当前数据库中的所有对象名称、对象的所有者和对象的类型。

1:显示当前数据库中所有对象的信息

use  gzgl

go

exec sp_help

2:显示表jbxx的信息

use  gzgl

go

exec sp_help jbxx1

(四) 更改表的名称

语法:sp_rename [@objname=]‘object_name’,[@newname=] ‘new_name’

[,[@objtype=] ‘object_type’]

@objtype=] ‘object_type’指定要改名的对象的类型,其值可以为COLUMN,DATABASE,INDEX,USERDATATYPE,OBJECT。值OBJECT指代系统表中的所有对象,OBJECT值为默认值。

1sp_rename ‘jbxx1’基本信息‘  //jbxx1的名称改为基本信息

(五) 删除表

a.利用企业管理器

在企业管理器中,右击要删除的数据表,从弹出的快捷菜单中选择“删除”选项,出现“除去对象”对话框,在对话框完成操作。

b.利用T-SQL语句

DROP TABLE table_name

抱歉!评论已关闭.