--创建数据表--
[use 要创建数据表的数据库名称
go]
create table 要创建的表名
(
字段名 数据类型[长度] [null | not null] [primary key],
... ... ... ... ,
字段名 数据类型[长度] [null | not null]
)

例:
use 商品管理数据库
go
create table 客户信息表
(
客户编号 nchar(8) not null,
客户姓名 nvarchar(5) not null,
联系电话 nvarchar(11) not null,
地址 nvarchar(30) null,
邮箱 nvarchar(20)
)

--修改数据表--
[use 要修改数据表的数据库名称
go]
alter table 要修改的表名
alter column 要修改字段名[修改后的数据类型[(长度)] [null | not null ] ]--修改字段
[add 字段名 数据类型[(长度)] [null | not null ] ]--添加新字段
[drop column 字段名]--删除字段

例:
use 商品管理数据库
go
alter table 客户信息表
alter column 邮箱 varchar(50) null
go

--删除数据表--
[use 要删除数据表的数据库名称
go]
drop table 表名[,表名,...] --删除数据表,同时删除数据表中所有数据,以及该表与数据库中其他表的关联和约束

--数据表的约束设置--
--设置主键约束(PK)--
[use 要设置数据表字段主键的数据库名称
go]
alter table 数据表名
add constraint 约束名 --添加约束
primary key(字段名 [,字段名...]) --设置主键的字段名

例:
use 商品管理数据库
go
alter table 客户信息表
add constraint PK_客户信息表_客户编号
primary key(客户编号)

--设置默认约束(DF)--
alter table 数据表名
add constraint 约束名
default 默认值 for 字段名

例:
use 商品管理数据库
go
alter table 客户信息表
add constraint DF_客户信息表_地址
default '辽宁沈阳' for 地址

--设置唯一约束(UN)--
[use 要设置数据表字段主键的数据库名称
go]
alter table 数据表名
add constraint 约束名 --添加约束
unique [clustered | nonclustered](字段名 [,字段名...]) --clustered | nonclustere表示聚集或非聚集

例:
use 商品管理数据库
go
alter table 客户信息表
add constraint UN_客户信息表_邮箱
unique clustered(邮箱)

--设置检查约束(CK)--
[use 要设置数据表字段主键的数据库名称
go]
alter table 数据表名
add constraint 约束名 --添加约束
check (约束表达式)

例:
use 商品管理数据库
go
alter table 客户信息表
add constraint CK_客户信息表_邮箱
check (邮箱 like '_%@_%._%')

--设置外键约束(FK)--
[use 要设置数据表字段主键的数据库名称
go]
alter table 数据表名
add constraint 约束名 --添加约束
foreign key (字段名) --foreign key指定添加约束为外键约束
references 主表名(字段名)

例:
use 商品管理数据库
go
alter table 商品信息表
add constraint FK_商品类型表_商品信息表_商品类型编号
foreign key (商品类型编号)
references 商品类型表(商品类型编号)

--查看约束--
exec sp_help 约束名 --显示Name(名称)、Owner(所有者)、Type(类型)、Create_datetime(时间),一般是默认约束和检查约束
exec sp_helptext 约束名 --显示约束表达式,一般是默认约束和检查约束

例:
exec sp_help CK_客户信息表_邮箱
exec sp_helptext CK_客户信息表_邮箱

--删除约束--
alter table 要删除约束的数据表名
drop constraint 约束名[, 约束名, ...] --要删除的约束名

例:
alter table 商品信息表
drop constraint DF_商品信息表_地址

注:"--"可看成说明或者注释文本

SQL Server 的数据表简单操作的更多相关文章

  1. SQL Server 2012 - 数据表的操作

     unicode:双字节编码      variable:可变的    character:字符 T-SQL:  Transact Structured Query Language unique:唯 ...

  2. MS SQL Server中数据表、视图、函数/方法、存储过程是否存在判断及创建

    前言 在操作数据库的时候经常会用到判断数据表.视图.函数/方法.存储过程是否存在,若存在,则需要删除后再重新创建.以下是MS SQL Server中的示例代码. 数据表(Table) 创建数据表的时候 ...

  3. Sql Server删除数据表中重复记录 三种方法

    本文介绍了Sql Server数据库中删除数据表中重复记录的方法. [项目]数据库中users表,包含u_name,u_pwd两个字段,其中u_name存在重复项,现在要实现把重复的项删除![分析]1 ...

  4. sql server导出数据,详细操作!(自用)

    右键数据库——>任务——>导出数据 填写数据源连接信息 填写 要导入的数据库  连接信息 导出表时,全选,[编辑映射],勾选启用标识插入,这样才能让自增的字段 行正常插入. 然后导出即可. ...

  5. VFP获取 SQL Server 的数据表、触发器、存储过程、视图等脚本

    本文代码转载自红雨先生 *-----------------------------------------------* SqlServer 相关函数*----------------------- ...

  6. Azure 云平台用 SQOOP 将 SQL server 2012 数据表导入 HIVE / HBASE

    My name is Farooq and I am with HDinsight support team here at Microsoft. In this blog I will try to ...

  7. SQL Server 查看数据表占用空间大小的SQL语句

    ) ) if object_id('tempdb..#space') is not null drop table #space ),rows ),data ),index_size ),unused ...

  8. sql server导出数据,远程连接失败,需要设置权限

    在sql  server management中右键当前连接——>方面 在 服务器配置中 将  RemoteAccessEnabled.RemoteDacEnabled设置为TRUE 安全性—— ...

  9. SQL Server 变更数据捕获(CDC)监控表数据

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现过程(Realization) 补充说明(Addon) 参考文献(References) ...

随机推荐

  1. 手机网页调试利器: Chrome

    新开发的网页需要在手机或是模拟机上运行测试, 可以借助 Chrome提供的手机网页预览程序进行简单调试.查看 制作的网页是否能够适合各种手机型号使用. 下面所以下如何使用Chrome调试多类型手机网页 ...

  2. wkhtmltopdf乱码解决方案

    在CentOS下使用wkhtmltopdf将html页面转换成pdf的时候对于某些页面可能会出现转换成的pdf中很多字符乱码的情况,更怪异的是直接在命令行下运行一切正常,但在httpd+php下使用却 ...

  3. Git使用培训

    1.VS“扩展和更新”菜单,NuGet 2.通过“扩展和更新”,联机搜索git,安装“Git Extensions”和“Git Source Control Provider” 3.通过Git命令配置 ...

  4. ACM入门

    1.给n个数字,将它们重新排序得到一个最大的数字 例子 4123 124 56 90--------------90561241235123 124 56 90 9------------990561 ...

  5. C++11实现生产者消费者问题

    生产者消费者问题是多线程并发中一个非常经典的问题.我在这里实现了一个基于C++11的,单生产者单消费者的版本,供大家参考. #include <windows.h> #include &l ...

  6. Grunt的使用

    在Node环境下.需要预先安装好Node. 1.安装grunt-cli [root@Luxh-01 ~]# npm install -g grunt-cli 2.创建一个目录test [root@Lu ...

  7. 主机映射Linux虚拟机硬盘到本地

    Windows7上面通过VMware装了一个ubuntu的虚拟机,为了方便在window下直接查看和编辑linux系统下的代码,就想着远程映射硬盘,把Ubuntu的硬盘映射到主机中. 硬盘映射需要Sa ...

  8. Android动态加载学习笔记(一)

    前言 上周五DPAndroid小分队就第二阶段分享内容进行了讨论,结果形成了三个主题:性能优化.动态加载.内核远离.我选择的是第二项——动态加载.在目前的Android开发中,这一部分知识还是比较流行 ...

  9. W5500EVB UDP模式的测试与理解-新华龙电子

    WIZnet 之前已经介绍过W5500EVB 在TCP模式下的两种(Server及Client)数据传输的实现过程,那么传输控制协议中,UDP也是非常常用的,这种无连接的协议在更多场合为用户提供了便捷 ...

  10. Gesture Recognizers与触摸事件分发[转]

    一.Gesture Recognizers Gesture Recognizers是在iOS3.2引入的,可以用来识别手势.简化定制视图事件处理的对象.Gesture Recognizers的基类为U ...