文章目录

  • 表的操作
    • 1. 表的创建【CREATE TABLE 表名】
    • 2. 使用T-SQL语句修改表(修改列的属性、增加列、删除列)
    • 3. 列约束和表约束
    • 4. 表数据操作(insert、update、delete、truncate)
    • 5. 删除表【drop table 表名】

表的操作

1. 表的创建【CREATE TABLE 表名】

在数据库“teaching”中创建“course” 表 USE teaching
GO
CREATE TABLE course
(
cno char(4) PRIMARY KEY,
cname nvarchar(20) NOT NULL,
classhour tinyint CHECK(classhour>=2 and classhour<=6),
credit tinyint CHECK (credit>=2 and credit<=5)
)

2. 使用T-SQL语句修改表(修改列的属性、增加列、删除列)

2.1修改列的属性

在student表中修改“sname”字段的属性,使该字段的数据类型为nvarchar(10),允许取空值。USE teaching
GO
ALTER TABLE student
ALTER COLUMN  sname  nvarchar(10) NULL

2.2 增加列

在course表中添加“teacher”字段,数据类型为nvarchar(8)。USE teaching
GO
ALTER TABLE course
ADD teacher nvarchar(8)

2.3 删除列

删除student表中的“birthday”字段。USE teaching
GO
ALTER TABLE student
DROP COLUMN birthday

3. 列约束和表约束

SQL Server 2012提供了6种约束:
PRIMARY KEY(主键)、
FOREIGN KEY(外键)、
UNIQUE(唯一性)、
CHECK(取值范围)、
DEFAULT(默认值)约束
NULL和NOT NULL(是否允许为空)

CREATE TABLE Department(
Did char(4) PRIMARY KEY not null,
Dname char(20) not null,
Dtel char(11) CHECK (Dtel like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' ) not null
)create table Employee
(Eid char(5) primary key not null,Did char(4) not null,Ename char(10) not null,Esex char(2) not null,Ebirth date check(Ebirth>='1956-1-1' and Ebirth<='2050-1-1'),foreign key(Did) references Department(Did)
)CREATE TABLE Borrow(
Eid char(5) FOREIGN KEY REFERENCES Employee(Eid),
ISBN char(15) FOREIGN KEY REFERENCES Book(ISBN),
Bdate date CHECK(Bdate BETWEEN '2000-1-1' AND '2030-1-1'),
Pdate date CHECK(Pdate BETWEEN '2000-1-1' AND '2030-2-1'),
Rdate date CHECK(Rdate BETWEEN '2000-1-1' AND '2030-2-1'),
)

DEFAULT约束
当使用INSERT语句插入数据时,如果没有为某一个列指定数据,那么DEFAULT约束就在该列中输入一个默认值。
例如:在学生表的性别列中定义了一个DEFAULT约束为“男”。当向该表中输入数据时,如果没有为性别列提供数据,那么DEFAULT约束把默认值“男”自动插入到该列中。因此,DEFAULT约束可以实现保证域完整性。

CREATE TABLE ST
(
学号     char(6)    PRIMARY KEY,
身份证号 char(18)  UNIQUE,
姓名     nvarchar(8)   NOT NULL,
专业名   nvarchar(10),
性别     nchar(1) CONSTRAINT chk_1  CHECK (性别='男' or 性别='女'),
出生时间 smalldatetime  NOT NULL,
总学分   tinyint,
入学日期 datetime  DEFAULT getdate( )
)

4. 表数据操作(insert、update、delete、truncate)

insert

在学生(ST)表中插入一行数据。INSERT into ST(学号,姓名,性别,出生时间) VALUES('150111','杨丽','女','1996-10-3')
或
INSERT into ST
VALUES('150112','130212199707120895','张强','网络工程','男','1997-7-12',150,'2010-9-1')

update

UPDATE  ST  SET  性别='女'  WHERE 姓名='杨丽'

delete

删除ST表中,将学号为‘150112’的学生记录删除。
DELETE  FROM ST  WHERE 学号 = '150112'

truncate

清空学生表中的数据TRUNCATE TABLE STtruncate
vt.截断;截短,缩短,删节(尤指掐头或去尾)
adj.截短的;被删节的

5. 删除表【drop table 表名】

删除学生表(ST)
DROP  TABLE  ST

2. 表的操作:创建表、修改表、列约束和表约束、数据操作、删除表相关推荐

  1. oracle删除表结构跟表数据,Oracle删除表的几种方法

    删除表(记录和结构)的语名delete  ----  truncate  ---- drop DELETE (删除数据表里记录的语句)  www.2cto.com DELETE FROM表名 WHER ...

  2. 虚拟机mysql创建一个表_MySQL:创建、修改和删除表

    其实对很多人来说对于SQL语句已经忘了很多,或者说是不懂很多,因为有数据库图形操作软件,方便了大家,但是我们不能忘记最根本的东西,特别是一些细节上的东西,可能你用惯了Hibernate,不用写SQL语 ...

  3. oracle表空间的创建、修改、删除及一些参数解释

    创建表空间 方法1: 代码创建,如下: PL/SQL 建立表空间(一般建N个存数据的表空间和一个索引空间):       create tablespace 表空间名       datafile ' ...

  4. mysql 导入创建表空间_说说在 Oracle11g 中如何创建表空间、创建用户并授权以及导入与导出数据...

    假设 Oracle11g 已在本机安装成功. 1 创建表空间 打开 sqlplus 工具:开始-->所有程序--> Oracle –OraDb11g_home1-->应用程序开发-- ...

  5. Python Excel操作 xlwt xlrd xlutils三个模块的使用,不删除表,往后累加数据

    目录 主要代码 其他类引用代码 Python对Excel表格进行操作(不删除表,往后累加数据) 用时需改变五个参数和自己重新定义AddData方法 self.tableName='设置速度报文测试'# ...

  6. sql添加,修改数据及删除表,表约束、字段及数据

    --建立学生数据库 create database 学生数据库;--建立学生表 create table 学生表 ( SNO CHAR(4), SN CHAR(8)NOT NULL, SEX CHAR ...

  7. oracle导入 表 卡住了,oracle数据库怎么导入dmp,只导入数据不导入表结构?

    使用方法: Exp parameter_name=value or Exp parameter_name=(value1,value2--) 只要输入参数help=y就可以看到所有帮助. EXP常用选 ...

  8. SQL Server数据库表的基本操作(批量插入、删除、查询数据,删除表中重复数据方法)

    实验名称:数据库表的基本操作与表内数据操作 实验目的: 掌握数据库表创建方法(交互式.T-SQL法) 掌握修改数据库表结构的方法 掌握删除数据库表的方法 掌握交互式EXCEL文件录入数据至数据库表的方 ...

  9. 删除oracle中的一列数据,Oracle删除表数据

    本篇文章帮大家学习Oracle删除表数据,包含了Oracle删除表数据使用方法.操作技巧.实例演示和注意事项,有一定的学习价值,大家可以用来参考. 在本教程中将学习如何使用Oracle DELETE语 ...

最新文章

  1. 世界各大天文台联合预警:今晚公布“引力波重要发现”
  2. 判断是不是链接 正则_Python 正则表达式 保姆级教程,小学生都看得懂!!
  3. Excel表格快速将公式运用到一整列
  4. 读取文件夹下所有的文件
  5. 转载:div和flash层级关系问题
  6. 【渝粤题库】陕西师范大学202881 电子商务概论
  7. Jquery Mobile dialog的生命周期
  8. slf4j在linux位置,SLF4J环境设置
  9. php简单验证码实例,php结合GD库简单实现验证码的示例代码
  10. remobject 簡介
  11. Android ActionBar的Overlay模式如何不遮盖顶部内容的问题
  12. ShowWindow函数
  13. JavaScript全栈开发-工具篇
  14. 车联网技术 应用场景 各个领域方向(大方向分析)
  15. 代码实现微信8.0特效
  16. dB与放大倍数的关系
  17. 转贴一首很感人的诗---孩子快抓紧妈妈的手
  18. img图片转码base64使用(简单版)
  19. 具有立体效果的地图制作
  20. Android x86镜像分析

热门文章

  1. 基于Unity3D 的Vuforia SDK开发基础教程
  2. HoloLens2开发常见问题汇总
  3. 分治算法 求第k小元素 O(n) O(nlog2^n)
  4. 利用ptython中的tutle画了一个表情包——2020冲冲冲!!
  5. 完美解决IDEA 中Maven插件报红详细攻略(含阿里云镜像下载失败),差点泪崩...冲冲冲
  6. 【pano2vr】网页Flash中简单实现炫酷的3D模型制作
  7. 小龙女,杨过跳崖真相
  8. Thinking in Java---如何正确的终止子线程
  9. 12.flowable 流程实例 终止流程
  10. [SPRD] Q 版本开机 logo 显示原理