SqlCollections - 数据表管理

 1 --==============================数据表管理===============================
 2 --特殊字符的输入
 3 --Tab: char(9)
 4 --换行: char(10)
 5 --回车: char(13)
 6
 7 --varchar(n):1个字符占1个字节;nvarchar(n):1个字符占2个字节
 8 --‘我是Sky‘存在varchar字段中,占7个字节;存在nvarchar中,占10个字节
 9
10 --创建新表,并指定主键、自增长、非空、Unique约束、排序类型、默认值、CHECK字段约束、CHECK数据表约束
11 --约束的格式:CONSTRAINT 自定义的约束名 约束类型 其它参数
12 CREATE TABLE TEST1
13 (
14     编号 int IDENTITY(1,1) PRIMARY KEY,    --自增长、主键约束
15     姓名 nvarchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL,    --排序、非空
16     别名 nvarchar(50) UNIQUE,    --唯一键约束
17     性别 bit DEFAULT 1,    --默认值
18     年龄 tinyint CONSTRAINT CK_TEST1_年龄 CHECK (年龄 > 0 AND 年龄 < 101),    --CHECK字段约束
19     部门编号 int CONSTRAINT FK_TEST1_部门编号
20         FOREIGN KEY
21         REFERENCES 部门表(部门编号),    --外键约束
22     地址 nvarchar(200),
23     电话 varchar(50),
24     CHECK (电话 is not null or 地址 is not null)    --CHECK数据表约束
25 )
26
27
28 --创建计算列
29 CREATE TABLE TEST2
30 (
31     编号 int,
32     编号2 int,
33     单价 money NOT NULL,
34     数量 int NOT NULL
35         CONSTRAINT CK_TEST2_数量 CHECK (数量 > 0),
36     合计 AS 单价*数量    --计算列是只读的
37 )
38
39 --添加字段
40 ALTER TABLE TEST1
41 ADD 备注 nvarchar(500)
42
43 --删除字段
44 ALTER TABLE TEST1
45 DROP COLUMN 备注
46
47 --修改字段
48 ALTER TABLE TEST2
49 ALTER COLUMN 编号 int NOT NULL
50
51 --重命名表名和字段名
52 EXEC sp_rename ‘TEST1‘,‘测试1‘    --修改表名
53 EXEC sp_rename ‘TEST1.别名‘,‘Alias‘,‘COLUMN‘    --修改列名
54
55 --添加主键
56 ALTER TABLE TEST2
57 ADD CONSTRAINT PK_TEST2 PRIMARY KEY (编号)
58
59 --添加外键
60 ALTER TABLE TEST2
61 ADD CONSTRAINT FK_TEST2_TEST1 FOREIGN KEY (编号2) REFERENCES 测试1(编号)
62
63 --添加CHECK约束
64 ALTER TABLE TEST2
65 WITH NOCHECK    --可选:添加约束时不检查现有数据
66 ADD CONSTRAINT CK_TEST2_单价 CHECK (单价 > 0)
67
68 --添加默认值约束
69 ALTER TABLE TEST2
70 ADD DEFAULT (1) FOR 数量
71
72 --删除约束
73 ALTER TABLE TEST2
74 DROP CONSTRAINT CK_TEST2_单价
75
76 --禁用约束
77 ALTER TABLE TEST2
78 NOCHECK CONSTRAINT CK_TEST2_单价
79 --禁用所有约束
80 ALTER TABLE TEST2
81 NOCHECK CONSTRAINT ALL
82
83 --启用约束
84 ALTER TABLE TEST2
85 CHECK CONSTRAINT CK_TEST2_单价
86 --启用所有约束
87 ALTER TABLE TEST2
88 CHECK CONSTRAINT ALL
89
90 --删除表
91 --必须先删除表与表间的关联才能删除表
92 DROP TABLE TEST2
93
94 --判断表是否存在
95 IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N‘[dbo].[TEST2]‘) AND type in (N‘U‘))
96 BEGIN
97     PRINT ‘可以创建该表‘
98 END
时间: 2024-10-09 18:33:53

SqlCollections - 数据表管理的相关文章

数据库管理之数据表管理(1)

数据类型 创建数据表 语法 CREATE TABLE 表名 ( 字段名1 数据类型 列的属性 列约束, 字段名2 数据类型 列的属性 列约束, 字段名3 数据类型 列的属性 列约束, - ) 列属性的格式: [NULL|NOT NULL] [IDENTITY(标识种子, 标识增量)] 列约束的格式: [CONSTRAINT 约束名] PRIMARY KEY[(列名)] [CONSTRAINT 约束名] UNIQUE [(列名)] [CONSTRAINT 约束名] [FOREIGEN KEY[(外

mysql 超大数据/表管理技巧

如果你对长篇大论没有兴趣,也可以直接看看结果,或许你对结果感兴趣.在实际应用中经过存储.优化可以做到在超过9千万数据中的查询响应速度控制在1到20毫秒.看上去是个不错的成绩,不过优化这条路没有终点,当我们的系统有超过几百人.上千人同时使用时,仍然会显的力不从心. 目录: 分区存储 优化查询 改进分区 模糊搜索 持续改进的方案 正文: 分区存储 对于超大的数据来说,分区存储是一个不错的选择,或者说这是一个必选项.对于本例来说,数据记录来源不同,首先可以根据来源来划分这些数据.但是仅仅这样还不够,因

数据表管理admin

知识预览 admin组件使用 admin源码解析 回到顶部 admin组件使用 Django 提供了基于 web 的管理工具. Django 自动管理工具是 django.contrib 的一部分.你可以在项目的 settings.py 中的 INSTALLED_APPS 看到它: # Application definition INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.c

数据库管理之数据表管理(2)

约束 1 增加约束 ALTER  TABLE  表名 ADD  CONSTRAINT  约束名  约束类型  具体的约束说明 --添加主键约束(将AuthorID作为主键) alter table Authors add constraint pk_AuthorID primary key(AuthorID) --添加默认约束(性别默认值为1) alter table Authors add constraint DF_Sex DEFAULT(1) for Sex --添加检查约束(电子邮箱必须

数据库系列学习(二)-数据表的创建和管理

1.数据类型 A:整数类型 bit,int,smallint,tinyint [与操作系统位数有关] B:数值类型 decimal,numeric,money,smallmoney,float,real [可存小数] C:字符相关类型 char,varchar,text,nchar,nvarchar,ntext D:日期时间类型 datetime(精确到0.01秒),smalldatetime(精确到分钟),timestamp E:二进制类型 image [经图片,视频转为二进制,保存到数据库]

数据表的创建与管理

在数据库中通过数据表来存放记录,在数据表中经常会碰到主外键,索引,约束等条件,下面就详细一下. 主键 一张数据表中唯一的标识,确保一张数据表中不会出现两个完全相同的数据记录. 主键可以定义在多个列上,也就是说在定义数据库的时候可以将数据表中的多个列合并在一起作为该表的主键 外键 用来表与表之间关系的.如果字段F是表B中的字段,而且是表A的主键的话,那么列F就是表B的外键.用来执行增 删改查的时候,两张表一致性. 外键删除时,对应的表中的记录也应该做出相应的调整,分为三种方式 1.CASCADE:

SQL笔记-第二章,数据表的创建和管理

数据类型 分5类:整数.数值.字符相关.日期时间以及二进制 1.整数 数据库系统 类型 说明 MYSQL tinyint [unsigned] 一个很小的整数.有符号的范围是-128 到127,无符号的范围是0 到255. smallint [unsigned] 一个小整数.有符号的范围是-32768到32767,无符号的范围是0 到65535. mediumint [unsigned] 一个中等大小整数.有符号的范围是-8388608到8388607,无符号的范围是0到16777215. in

MySQL之终端(Terminal)管理数据库、数据表、数据的基本操作

sudo /Applications/XAMPP/xamppfiles/bin/mysql.server start /Applications/XAMPP/xamppfiles/bin/mysql -h localhost -u root -p; http://www.cnblogs.com/GarveyCalvin/p/4297282.html#createDatabase 1. mysql> select version(); +-----------+ | version() | +--

权限管理数据表设计说明

权限管理数据表设计说明 B/S系统中的权限比C/S中的更显的重要,C/S系统因为具有特殊的客户端,所以访问用户的权限检测可以通过客户端实现或通过客户端+服务器检测实现,而B/S中,浏览器是每一台计算机都已具备的,如果不建立一个完整的权限检测,那么一个"非法用户"很可能就能通过浏览器轻易访问到B/S系统中的所有功能.因此B/S业务系统都需要有一个或多个权限系统来实现访问权限检测,让经过授权的用户可以正常合法的使用已授权功能,而对那些未经授权的"非法用户"将会将他们彻底