数据与统计

黄玉珍

目录

  • 1 第一章 绪论
    • 1.1 数据库系统概述
    • 1.2 数据模型
  • 2 第二章 数据库的基本操作
    • 2.1 文件与事务操作
    • 2.2 数据库的创建与查看、管理
  • 3 第三章 数据表的建立与操作
    • 3.1 数据表及SQL Server数据类型
    • 3.2 数据库中表的操作
  • 4 第四章  数据查询
    • 4.1 基本查询与带条件查询
    • 4.2 高级查询
  • 5 第五章 数据完整性
    • 5.1 数据完整性的基本类型与约束
    • 5.2 默认、规则、标识和自定义数据类型
  • 6 第六章 视图
    • 6.1 视图的概述及视图的操作
  • 7 第七章 存储过程
    • 7.1 存储过程的概述及存储过程的操作
  • 8 第八章 触发器
    • 8.1 触发器的概述及触发器的操作
  • 9 第九章 用户自定义函数
    • 9.1 用户自定义函数概述及操作
  • 10 第十章 安全管理
    • 10.1 安全机制、登陆账户、角色、权限
  • 11 第十一章  备份与恢复
    • 11.1 备份、恢复及其相关操作
数据库中表的操作

SQL Server对数据表的两种操作方式

在SQL Server中创建的数据库可以通过:

1.Microsoft SQL Server Management Studio图形化界面;

2.在SQL查询分析器输入T-SQL语言进行操作。

共包含创建表、删除表、修改表等操作。

表的创建

T-SQL语言中的CREATE TABLE语句用于在一个数据库中新创建一个数据表。其完整格式如下:

    CREATE TABLE 

    [[database.] owner.] table_name({

    col_name  column_properties[constraint[…constraint]] | [[,]constraint]}

    [[,]{next_col_name|next_constraint}…])[ON segment_name]

•database:表所在的数据库

•owner:表的拥有者

•col_name:列名

•column_properties:列属性

•constraint:表示约束名

表的删除

T-SQL语言中的drop table 语句用于删除一个数据表,以删除School数据库中的teachers表为例,其T-SQL命令为:

    use School

    go

    Drop table teachers

    go

表的修改

1.Alter 命令

修改数据表,增加或删除字段或约束,基本语法如下,其中adddrop为二选一

    alter  table [[database.]owner.]table_name

    [WITHNOCHECK]

    add

    {[column_namedatatype

      [column_constraints]

      |[[,]table_constraint]]}…

      |

    drop

    {[CONSTRAINT]constraint_name|

    COLUMN column_name }[,...n]

• WITHNOCHECK:不进行检查,在不指定此选项(默认情况)时,增加的约束要对现有数据进行检查,若发现违反约束,alter  table语句将中止运行

• add:允许在现存的表中增加新数据项或一个约束

• drop:指定删除数据库中的字段或约束

需注意,在删除某一列(字段)时,基于该列的所有索引和约束必须首先被删除掉

2.Insert命令

向表中增加新的记录或在记录中增加新的字段:

    insert [into] table_name

    [(column1,column2…)]

    values(value1,value2…)

•column:对应字段列表

•values:对应字段相应的值的列表

需注意:

•输入项的顺序和数据类型必须与表中字段的顺序和数据类型相对应

•定义表结构时如果定义了缺省值,此时如对相应字段不输入值,则系统会用缺省值插入表中

•如果插入的数据不能满足约束性条件,就出错

•由于参照性约束的存在,必须先向被参照的表中插入数据,然后再向定义了参照性约束的表中输入数

在INSERT子句中指定列名,values子句中的数据项与指定的列相对应,未列出的列必须具有允许NULL或timestamp或IDENTITY或DEFAULT四种定义的条件之一。跳过的列将以缺省值或者用NULL填充。

3.Update命令

改变表中显存记录的数据。

    update table_name set

    column1=modified_value1[,column2=modified_values[,…]]

    [where[column1=value1][,column2=value2]

•set:指定要更新的列及该列更新后的值

•where:指定被更新的记录所应满足的条件

4.Delete命令

删除一行或多行记录

    delete  from  table_name

    [where column1=value1][,column2=value2]