SQLServer数据库表管理合集

合集下载

SQLserver数据库命令(一)

SQLserver数据库命令(一)

SQLserver数据库命令(⼀)SQL server 数据库基础命令(⼀)创建数据表--0.使⽤命令打开你所创建的数据库(可⼿动选择数据库)--use XXX(XXX为数据库名)--1、创建表Department(存储⼆级院落系基本信息):包括院系编号(DepartNo)、院系名称(DepartName)--create table Department (DepartNo varchar(10) not null,DepartName varchar(20) not null)--2、创建表Class(存储班级基本信息):包括班级编(ClassNo)、班级所属院系编号(DepartNo)、班级名称(ClassName)--create table Class (ClassNo char(10) not null,DepartNo varchar(10) not null,ClassName varchar(30) not null)--3、创建表Student(存储学⽣基本信息):包括学号(StuNo)、班级编号( ClassNo)、姓名(StuName)、性别(Gender)、密码(Pwd)--create table Student (StuNo varchar(30) not null,ClassNo varchar(10) not null,StuName varchar(8) not null,Gender char(2) not null,Pwd varchar(50) not null)--4、创建表Course(存储课程基本信息):包括课程编号(CouNo)、课程名称(CouName)、课程类别(Kind)、学分(Credit)、任课教师(Teacher)、开课院系编号(DepartNo)、上课时间(SchoolTime)、限制选课⼈数(LimitNum)、报名⼈数(WillNum)、选中⼈数(ChooseNum) --create table Course (CouNo varchar(10) not null,CouName varchar(50) not null,Kind varchar(10) not null,Credit char(1) not null,Teacher varchar(8) not null,DepartNo varchar(10) not null,SchoolTime varchar(20) not null,LimitNum varchar(3) not null,WillNum varchar(3) not null,ChooseNum varchar(2) not null)--5、创建表Stucou(存储学⽣选课信息):包括学号(StuNo)、课程编号(CouNo)、志愿号(WillOrder)、选课状态(State)、随机数(RandomNum)--create table Stucou (StuNo char(10) not null,CouNo char(10) not null,WillOrder char(10) not null,State char(10) not null,RandomNum varchar(50) not null)--6、修改表student,增加⼀备注字段,字段名为bz,数据类型为备注型--alter table student add bz text。

SQLServer数据库操作总结(sql语法的使用)-电脑资料

SQLServer数据库操作总结(sql语法的使用)-电脑资料

SQLServer数据库操作总结(sql语法的使用)-电脑资料前言数据库学完了,但是脑子里还是没有一个系统的数据库操作概念,。

借着考试复习的这个机会,总结一下数据库的常用操作。

内容参考上课的课件进行了整理,整篇文章会很长。

1.数据库创建管理1.1 创建数据库CREATE DATABASE DBON PRIMARY(NAME = DB_data,FILENAME = 'F:\DB_data1.mdf', SIZE = 10MB,MAXSIZE = UNLIMTED),(NAME = DB_data2,FILENAME = 'F:\DB_data2.ndf', SIZE = 11MB,MAXSIZE = 20MB, FILEGROWTH = 2MB)LOG ON(NAME = DB_log1,FILENAME = 'F:\DB_log1.ldf', SIZE = 1MB,MAXSIZE = 30MB,FILEGROWTH = 10%)1.2 修改数据库1.2.1 增加数据文件语法:alter database 数据库名称add file 数据文件[to file group 文件组名称]add log file 日志文件操作:ALTER DATABASE DB ADD FILE ( NAME = , FILENAME = , SIZE = , FILEGROWTH = )1.2.2 增加日志文件ALTER DATABASE DBADD LOG FILE ( NAME = , FILENAME = , SIZE = , FILEGROWTH = ,MAXSIZE = )1.2.3 修改数据文件语法:ALTER DATABASE 数据库名MODIFY FILE 文件属性操作:将数据库db1中的数据文件data2的初始大小改为10MB,最大容量为20MB,增长幅度为10%alter database db1 modify file(name = data2,size = 10,maxsize = 20,filegrowth = 10%)ALTER DATABASE DBMODIFY FILE( NAME = , SIZE = ,) 1.2.4 删除数据文件和日志文件语法:alter database 数据库名称remove file 数据文件或日志文件的逻辑文件名操作:删除数据库db1中的数据文件data4和日志文件log2alter database db1 remove data4alter database db1 remove log21.2.5 增加文件组语法:alter database 数据库名add filegroup 文件组名操作:在数据库db1中增加一个g2文件组alter database db1 add filegroup g21.2.6 重命名文件组语法:alter database 数据库名modify filegroup 文件组名name=新文件组名操作:将数据库db1中的文件组g2更名为g3alter database db1 modify filegroup g2 name=g31.2.7 删除文件组语法:alter database 数据库名称remove filegroup 文件组名操作:删除数据库db1的文件组g3alter database db1remove filegroup g31.2.8 修改数据库名称语法:alter database 数据库名modify name = 新数据库名操作:将数据库db1的名字修改为glalter database db1modify name = gl1.3 删除数据库语法: Drop database 数据库名 [,……n]操作:删除数据库DB1,DB2,DB3DROP DATABASE DB1,DB2,DB32.架构与基本表2.1 创建架构CREATE SCHEMA T2 AUTHORIZATION User1 CREATE TABLE Test(C1 INT PRIMATY KEY, C2 CHAR(4) ) GRANT SELECT TO User2 DENY DELETE TO User3;2.2 修改架构ALTER SCHEMA T1 TRANSFER T2.Test2.3 删除架构DROP SCHEMA T22.4 创建基本表2.4.1 表约束类型:主键(PRIMARY KEY)约束惟一(UNIQUE)约束外键(FOREIGN KEY)约束检查(CHECK)约束说明:非空和默认值也可看成是约束。

sqlserver查询数据库中有多少个表,多少视图,多少存储过程,或其他对象

sqlserver查询数据库中有多少个表,多少视图,多少存储过程,或其他对象

sqlserver查询数据库中有多少个表,多少视图,多少存储过程,或其他对象2019年06月01日22:38:33风灵使阅读数64更多个人分类:SqlServer数据库--sql server 数表:select count(1)from sysobjects where xtype='U'--数视图:select count(1)from sysobjects where xtype='V'--数存储过程select count(1)from sysobjects where xtype='P'SELECT*FROM sysobjects WHERE(xtype ='U')--C = CHECK 约束--D = 默认值或 DEFAULT 约束--F = FOREIGN KEY 约束--L = 日志--FN = 标量函数--IF = 内嵌表函数--P = 存储过程--PK = PRIMARY KEY 约束(类型是 K)--RF = 复制筛选存储过程--S = 系统表--TF = 表函数--TR = 触发器--U = 用户表--UQ = UNIQUE 约束(类型是 K)--V = 视图--X = 扩展存储过程SQL Server xtype的介绍在数据库内创建的每个对象(约束、默认值、日志、规则、存储过程等)在表中占一行。

只有在tempdb内,每个临时对象才在该表中占一行。

列名型描述V = ViewX = Extended stored procedureuid smallint Schema ID of the owner of the object. For databases upgraded from an earlier version of SQL Ser ID is equal to the user ID of the owner. Overflows or returns NULL if the number of users and 32,767.** Important ** If you use any of the following SQL Server DDL statements, you must use the sys. view instead of sys.sysobjects.CREATE | ALTER | DROP USERCREATE | ALTER | DROP ROLECREATE | ALTER | DROP APPLICATION ROLECREATE SCHEMAALTER AUTHORIZATION ON OBJECTinfo smallint Identified for informational purposes only. Not supported. Future compatibility is not gua status int Identified for informational purposes only. Not supported. Future compatibility is not gua base_schema_ver int Identified for informational purposes only. Not supported. Future compatibility is not gua replinfo int Identified for informational purposes only. Not supported. Future compatibility is not gua parent_obj int Object identification number of the parent object. For example, the table ID if it is a trigger crdate datetime Date the object was created.ftcatid smallint Identifier of the full-text catalog for all user tables registered for full-text indexing, and tables that are not registered.schema_ver int Version number that is incremented every time the schema for a table changes. Always retur stats_schema_ver int Identified for informational purposes only. Not supported. Future compatibility is not gua type char(2) Object type. Can be one of the following values:AF = Aggregate function (CLR)C = CHECK constraintD = Default or DEFAULT constraintF = FOREIGN KEY constraint列名型描述deltrig int Identified for informational purposes only. Not supported. Future compatibility is not gua instrig int Identified for informational purposes only. Not supported. Future compatibility is not gua updtrig int Identified for informational purposes only. Not supported. Future compatibility is not gua seltrig int Identified for informational purposes only. Not supported. Future compatibility is not gua category int Used for publication, constraints, and identity.cache smallint Identified for informational purposes only. Not supported. Future compatibility is not gua列名数据类型描述name sysname 对象名,常用列id int 对象标识号xtype char(2) 对象类型。

sqlserver试验报告—数据库和表的创建

sqlserver试验报告—数据库和表的创建

数据库实验报告课程名称信息系统数据库技术实验名称数据表的管理专业班级 _______________________ 姓名___________________________ 学号___________________________ 实验日期 ________________________ 实验地点2012—2013 学年度第一学期一、实验目的1、掌握 Microsoft SQL Server 2005 Express Edition 的安装过程2、熟悉SQL Server 2005 Express Edition的基本菜单功能,界面。

3、掌握SQL Server 2005的启动、服务器注册等功能。

二、实验内容1、数据库的创建2、数据库的修改3、数据的导入4、数据的导出5、数据库的分离三、实验环境Windows XP 操作系统,Microsoft SQL Server 2005 Express Edition。

四、相关知识1、数据库命令规则取决于数据库兼容的级别,而数据库级别可以用存储过程sp_helpdb 来查询。

注意:其一由于在T-SQL中,“@”表示局部变量,“@@”表示全局变量,“##" 表示全局临时对象,所以不建议用这些符号作为数据库名称的开头;其二虽然在SQL Server 2005中,保留字区分大小写,但也不建议用改过大小写的保留字作为数据库名。

2、数据库文件:每个SQL Server 2005的数据库至少包含二个文件:一个数据文件(.mdf) 和一个日志文件(.ldf)。

3、数据库的创建命令:CREATE DATABASE4、数据库的修改命令:ALTER DATABASE只有数据库管到员或具有CREATE DATABASE权限的数据库所有者才有权执行 ATER DATABASE语句。

在实际操作中,ALTER DATABASE 一次只能修改一种参数5、数据库的删除命令:DROP DATABASE6、数据库的分离命令:SP_DETACH_DB 'filename'7、数据库的附加命令:CREATE DATABASE-FOR ATTACH8、数据的导入是指从其他数据源中把数据复制到SQL Server数据库中。

sqlserver常用命令

sqlserver常用命令

sqlserver常用命令SQLServer是一种关系型数据库管理系统,被广泛应用于各种企业级应用程序中。

它提供了一系列的命令,用于管理数据库、表、视图、存储过程等对象。

本文将介绍SQL Server中常用的命令及其使用方法,帮助读者快速掌握SQL Server的基本操作。

一、数据库管理命令1. 创建数据库CREATE DATABASE database_name;该命令用于创建一个新的数据库,其中database_name为要创建的数据库名称。

使用该命令时,需要确保具有足够的权限。

2. 删除数据库DROP DATABASE database_name;该命令用于删除指定的数据库,其中database_name为要删除的数据库名称。

使用该命令时,需要确保具有足够的权限,并且要谨慎操作,以免误删数据。

3. 修改数据库ALTER DATABASE database_name SET options;该命令用于修改指定的数据库,其中options为要修改的选项。

常用的选项包括修改数据库的名称、修改数据库的文件路径、修改数据库的恢复模式等。

二、表管理命令1. 创建表CREATE TABLE table_name (column_name1 data_type1, column_name2 data_type2, …);该命令用于创建一个新的表,其中table_name为要创建的表名称,column_name为要创建的列名称,data_type为要创建的列数据类型。

使用该命令时,需要确保具有足够的权限。

2. 删除表DROP TABLE table_name;该命令用于删除指定的表,其中table_name为要删除的表名称。

使用该命令时,需要确保具有足够的权限,并且要谨慎操作,以免误删数据。

3. 修改表ALTER TABLE table_name ADD column_name data_type;该命令用于向指定的表中添加一列,其中table_name为要修改的表名称,column_name为要添加的列名称,data_type为要添加的列数据类型。

sqlserver数据库表结构

sqlserver数据库表结构

sqlserver数据库表结构SQL Server数据库表结构详解一、用户表(user)用户表是一个常见的数据库表结构,用于存储系统中的用户信息。

该表通常包含以下字段:1. 用户ID(user_id):用于唯一标识每个用户的ID,通常为自增长的整数类型。

2. 用户名(username):用户的登录名,通常为字符串类型,长度限制根据具体需求而定。

3. 密码(password):用户的登录密码,通常为加密后的字符串类型。

4. 姓名(name):用户的真实姓名,通常为字符串类型。

5. 性别(gender):用户的性别,通常为枚举类型,如男、女等。

6. 手机号(phone):用户的手机号码,通常为字符串类型,长度限制根据具体需求而定。

7. 邮箱(email):用户的电子邮箱地址,通常为字符串类型,长度限制根据具体需求而定。

二、订单表(order)订单表用于存储用户的订单信息,包含以下字段:1. 订单ID(order_id):用于唯一标识每个订单的ID,通常为自增长的整数类型。

2. 用户ID(user_id):关联用户表的用户ID,表示该订单属于哪个用户。

3. 订单编号(order_number):订单的编号,通常为字符串类型,长度限制根据具体需求而定。

4. 下单时间(create_time):订单的创建时间,通常为日期时间类型。

5. 订单金额(amount):订单的总金额,通常为浮点数类型,表示订单应付的金额。

6. 支付状态(payment_status):订单的支付状态,通常为枚举类型,如未支付、已支付等。

三、商品表(product)商品表用于存储系统中的商品信息,包含以下字段:1. 商品ID(product_id):用于唯一标识每个商品的ID,通常为自增长的整数类型。

2. 商品名称(product_name):商品的名称,通常为字符串类型,长度限制根据具体需求而定。

3. 商品价格(price):商品的价格,通常为浮点数类型,表示商品的单价。

SqlServer数据库分区分表实例分享(有详细代码和解释)

SqlServer数据库分区分表实例分享(有详细代码和解释)

SqlServer数据库分区分表实例分享(有详细代码和解释)数据库单表数据量太⼤可能会导致数据库的查询速度⼤⼤下降(感觉都是千万级以上的数据表了),可以采取分区分表将⼤表分为⼩表解决(当然这只是其中⼀种⽅法),⽐如数据按⽉、按年分表,最后可以使⽤视图将⼩表重新并为总的虚拟表,其实并不影响上层程序的使⽤(程序也许都不知道分表了)。

主要步骤:1、新建⽂件组,将数据表⽂件保存路径指向相应⽂件组(应将⽂件组和⽂件放⼊不同的磁盘中,甚⾄不同服务器形成分布式数据库,因为数据的读取瓶颈很⼤程度在于磁盘的的读写速度,多个磁盘存放⼀个表可以负载均衡)2、设置分区函数(声明分区的标准)3、设置分区⽅案(即哪些区域使⽤哪个分区函数,形成完整的分区⽅案)4、给新表或现有表设置分区⽅案5、建⽴视图详细步骤(看需求可选):⼀、数据库状态备份和恢复USE master-- 备份BACKUP DATABASE AdventureWorksTO DISK = 'AdventureWorks.bak'WITH FORMAT---- 恢复RESTORE DATABASE AdventureWorksFROM DISK = 'AdventureWorks.bak'WITH REPLACEGO⼆、⽂件组和⽂件操作添加⽂件组USE [master]GOALTER DATABASE ZHH ADD FILEGROUP [⽂件组名称]Go添加⽂件并把其指向指定⽂件组USE master;GOALTER DATABASE 数据库名ADD FILE(NAME=N'⽂件名',FILENAME='存放路径', //如:E:\201109.NDF(精确到⽂件名)⽂件组存放与不同磁盘可以提⾼IO读写效率(多个磁头并发)SIZE=3MB,MAXSIZE=100MB,FILEGROWTH=5MB)TO FILEGROUP [⽂件组名]Go修改⽂件(可选)USE master;GOALTER DATABASE 数据库名MODIFY FILE(NAME = ⽂件名,SIZE = 20MB); //可以修改所有属性,列举即可GO删除⽂件(可选)ALTER DATABASE 数据库名 REMOVE FILE [⽂件组名]三、分区函数和分区⽅案分区函数⽤于规范如何分区的标准,如已哪列进⾏为标准分区、分区的⽅式(按时间、ID等)、分区的具体界限(⼀般来说,界限指标数要⽐分区数少1,⼀⼑则有两段)USE 数据库名GOCREATE PARTITION FUNCTION 分区函数名 (指标列的数据类型) //如:datetime、intAS RANGE RIGHT //右边界切分,默认为LEFTFOR VALUES (划分界限) //如时间划分('2003/01/01', '2004/01/01'),两个时间界限可划分出三个分区GO分区⽅案⽤于将已经建⽴好的分区函数组织成完整的⽅案,为每个分区分配存储位置Use 数据库名gocreate partition scheme 分区⽅案名as partition 分区函数to(⽂件组1,⽂件组2,⽂件组3,...) //注意分区数要与实际分区⼀致go在原有的基础上添加分区(可选)use 数据库名goalter partition scheme ps_OrderDate next used [FG4] //修改分区⽅案ps_OrderDate,定义新新分区使⽤FG4⽂件组alter partition function pf_OrderDate() split range('2005/01/01') //修改分区函数pf_OrderDate,在末尾添加界限'2005/01/01'go为现有表设置分区⽅案(可选)//为AutoBench表的InsertTime列创建新聚集索引,并绑定Scheme_DateTime分区⽅案CREATE CLUSTERED INDEX IX_CreateDate ON AutoBench (InsertTime)ON Scheme_DateTime (InsertTime)注:如原来主键有聚众索引要将其改为⾮聚集索引,才可添加新聚众索引//删除原主键上的聚集索引PK_ProductALTER TABLE Product DROP CONSTRAINT PK_Product//重新创建主键⾮聚集索引PK_ProductALTER TABLE Product ADD CONSTRAINT PK_Product PRIMARY KEY NONCLUSTERED (ProductID ASC)上⾯语句也可直接在索引属性中将聚集改为⾮聚集为新建表设置分区⽅案(可选)//创建表格Order,并设置Scheme_DateTime分区⽅案,指标列为OrderDateCREATE TABLE [Order](OrderID INT IDENTITY(1,1) NOT NULL,UserID INT NOT NULL,TotalAmount DECIMAL(18,2) NULL,OrderDate DATETIME NOT NULL) ON Scheme_DateTime (OrderDate)查询分区数据四、其他操作查询分区数据$partition函数--为任何指定的分区函数返回分区号,⼀组分区列值将映射到该分区号中语法: [ database_name. ] $PARTITION.partition_function_name(expression)参数: database_name 包含分区函数的数据库的名称。

SqlServer查询数据库所有的表名称,表说明以及字段详细信息

SqlServer查询数据库所有的表名称,表说明以及字段详细信息
sysindexes WHERE indid in( SELECT indid FROM sysindexkeys WHERE ithen 1 else 0 end, 列类型= , 字节数= a.length, 列长度= COLUMNPROPERTY(a.id,,'PRECISION'), 小数位= isnull(COLUMNPROPERTY(a.id,,'Scale'),0), 允许空= case when a.isnullable=1 then 1 else 0 end, 默认值= isnull(e.text,'')
FROM syscolumns a LEFT JOIN systypes b on a.xusertype=b.xusertype INNER JOIN sysobjects d on a.id=d.id and d.xtype='U' and <>'dtproperties' LEFT JOIN syscomments e on a.cdefault=e.id LEFT JOIN sys.extended_properties g on a.id=G.major_id and a.colid=g.minor_id LEFT JOIN sys.extended_properties f on d.id=f.major_id and f.minor_id=0 ORDER BY 表名称 ASC,排序号 ASC
请求出错错误代码503请尝试刷新页面重试
SqlServer查询数据库所有的表名称 ,表说明以及字段详细信息
SELECT 表名称= , 表说明= isnull(f.value,''), 排序号= a.colorder, 列名称= , 列说明= isnull(g.[value],''), 标识列= case when COLUMNPROPERTY( a.id,,'IsIdentity')=1 then 1 else 0 end, 主键列= case when exists(SELECT 1 FROM sysobjects where xtype='PK' and parent_obj=a.id and name in (SELECT name FROM
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

江西南昌
河南新乡
河南新乡
科目 学号 分8
数学 0010013 74
语文 0010012 67
语文 0010013 81
数学 0010016 98
×
数学
0010021 98

ACCP V4.0
自定义完整性
用户编号 AV0012 AV0013 AV0014 CV0015 CV0016
11
….
ACCP V4.0
表操作
在企业管理器中演示打开表、数据输入等操作…
12
ACCP V4.0
创建数据库表-1
13
ACCP V4.0
SQL Server的数据类型
分类
备注和说明
二进制数据类型 存储非子符和文本的数据
文本数据类型
字符数据包括任意字母、符 号或数字字符的组合
日期和时间 数字数据
日期和时间在单引号内输入
是否符合其他特定要求?
——信誉值大于5的用户才能够加入会员列表
……
列值要求(约束) 整行要求(约束)
6
ACCP V4.0
域完整性
完整性包括…2-2
实体完整性 自定义完整性
引用完整性
7
ACCP V4.0
学号 0010012 0010013 0010014 0010015 0010016
×
0010014
以后,再删除两行,下次再输入数据行的时候,标识值从 多少开始?
22
ACCP V4.0
创建数据库表-5
23
ACCP V4.0
创建数据库表-6
演示建立主-外键关系……
24
ACCP V4.0
关系图
演示关系图……
25
ACCP V4.0
主表和从表
1、当主表中没有对应的记录时,不能将记录添加到子表
——成绩表中不能出现在学员信息表中不存在的学号;
第二章 SQL Server数据库表管理
1
ACCP V4.0
回顾
数据库的作用 数据库的发展过程以及当前流行的数据库 数据库基本概念:数据存储方式、实体和记录、
数据库和数据库表、数据冗余和数据完整性 使用企业管理器创建组、注册、用户 在企业管理器中创建数据库 收缩、移动和配置数据库的选项
思考
15
ACCP V4.0
创建数据库表-2
16
ACCP V4.0
学员姓名允许为空吗? 家庭地址允许为空吗? 电子邮件信息允许为空吗? 考试成绩允许为空吗?
思考
17
ACCP V4.0
创建数据库表-3
18
ACCP V4.0
思考
在主键列输入的数值,允许为空吗? 一个表可以有多个主键吗? 在一个学校数据库中,如果一个学校内允许重名的学员,
但是一个班级内不允许学员重名,可以组合班级和姓名两 个字段一起来作为主键吗?
19
ACCP V4.0
选择主键的原则
最少性
尽量选择单个键作为主键
稳定性
尽量选择数值更新少的列作为主键
20
ACCP V4.0
创建数据库表-4
表中没有合适的列作为主键怎么办?
21
ACCP V4.0
思考
标识列允许为字符数据类型吗? 如果标识列A的初始值为1,增长量为2,则输入三行数据
域完整性
地址
….
山东定陶
湖南新田
江西南昌
河南新乡
河南新乡
湖北江门
约束方法:限制数据类型、检查约束、外键约束、 默认值、非空约束
9
ACCP V4.0
引用完整性
学号 0010012 0010013 0010014 0010015 0010016
姓名 李山 吴兰 雷铜 张丽鹃 赵可以
地址

山东定陶
湖南新田
数据 可变长度非 Unicode 数据 固定长度的 Unicode 数据 可变长度 Unicode 数据 存储长文本信息 存储可变长度的长文本 日期和时间 整数
数字
存储布尔数据类型
ACCP V4.0
电话号码一般使用什么数据类型存储? 性别一般使用什么数据类型存储? 年龄信息一般使用什么数据类型存储? 照片信息一般使用什么数据类型存储? 薪水一般使用什么数据类型存储?
2
ACCP V4.0
本章目标
使用企业管理器创建数据库表 设置表的主键、外键和建立表之间的关系 为表增加约束
3
ACCP V4.0
再论数据完整性 2-1
可靠性
准确性
数据完整性
4
ACCP V4.0
再论数据完整性 2-2
数据存放在表中 “数据完整性的问题大多是由于设计引起的” 创建表的时候,就应当保证以后数据输入是正确的
姓名 李山 吴兰 雷铜 张丽鹃 赵可以
雷铜
实体完整性
地址
….
山东定陶
湖南新田
江西南昌
河南新乡
河南新乡
江西南昌
约束方法:唯一约束、主键约束、标识列
8
ACCP V4.0
学号 0010012 0010013 0010014 0010015 0010016
×
姓名 李山 吴兰 雷铜 张丽鹃 赵可以
8700000000 李亮
2、不能更改主表中的值而导致子表中的记录孤立
——把学员信息表中的学号改变了,学员成绩表中的学号也应当随之 改变;
3、子表存在与主表对应的记录,不能从主表中删除该行
——不能把有成绩的学员删除了
4、删除主表前,先删子表
——先删学员成绩表、后删除学员信息表
26
ACCP V4.0
创建数据库表-7
用户姓名 孙悟空 猪悟能 沙悟净 玄痛 乔峰
会员证
….
AV378289
AV378290
AV378291
AV372133
AV121322
×
触发器:检查信用值
帐号 00192 00288 12333 90111 93000
姓名 信用
孙悟空 7 猪悟能 6
段誉 8 虚竹 40 岳不群 -10
约束方法:规则、存储过程、触发器
——错误的数据、不符合要求的数据不允许输入
创建表:保证数据的完整性 = 实施完整性约束
5
ACCP V4.0
完整性包括…2-1
输入的类型是否正确?
——年龄必须是数字
输入的格式是否正确?
——身份证号码必须是18位
是否在允许的范围内?
——性别只能是”男”或者”女”
是否存在重复输入?
——学员信息输入了两次
该数据仅包含数字,包括正 数、负数以及分数
货币数据类型 Bit数据类型
14
用于十进制货币值 表示是/否的数据
数据类型 Image Char
Varchar Nchar Nvarchar Text Ntext Datetime int smallint float real Money Bit
说明 可用来存储图像 固定长度的非 Unicode 字符
相关文档
最新文档