SQL数据库约束行为---防止数据乱填(即数据规范化)

防止乱填:
一、Check约束。
按照某种规则对数据进行检查。
操作:在表的设计界面中,右击相应的列,选择“CHECK约束”在弹出的对话框中,设置约束的名称和表达式。

代码实现:

create table car

(

code int check(code>0)

)

二、外键约束。主表,从表。
主表是用来约束从表的。外键应当建在从表上。
使用主表的主键来约束从表外键。
从表中的外键列是不能随便乱填内容的,它只能填写主表主键中存在的数据。

一旦建立起外键关系来,从表的外键不能乱填,反过主表中的主键列也不能乱删除乱改。

级联删除的设置——整理

操作:先建好主表,在从表的设计界面上,右击-“关系”,在弹出的对话框中选择“添加”,在右边属性列表中设“表和列的规范”

第二种方法是在相应的数据库关系图上面右键新建数据库关系图

代码实现

create table Car

(

code varvhar(50) primary key,

brand varchar(50) reference Brand(Brand_code)

)

主表是Brand 表

三、类型。

创建表所有列所定义的数据类型

字符数据:char;varchar

日期时间数据: datetime;smalldatetime

数值型数据:bigint;int;smallint;tinyint

      decimal(a,b)a代表包含小数和小数点一共的位数,b代表小数位数.即整数位的个数为a-b-1(1个小数点位)

时间: 2024-12-11 19:57:17

SQL数据库约束行为---防止数据乱填(即数据规范化)的相关文章

SQL数据库约束

针对维护数据库的完整性,关系型数据库SQL提供了数据约束来管理数据,常用的约束有:外键.唯一.主键. 主键约束:标识数据的唯一,便于数据查询索引: 唯一约束:保证数据的唯一性:常用语法 alter table Table_Name add constraint Uq_Name_Code unique (c_PowerCode) 外键约束:关联数据表,保证数据的完整,比如学生ID和成绩单中的学生编号,在学生成绩单表中,学生编号就是可以定义外键关联到学生表: 添加外键约束需要注意一下几点: 1.要关

SQL数据库约束行为---防止数据漏填

防止有些该填的没有填:一.非空约束不能为NULL.操作:在表的设计界面中“允许NULL值”中的复选框去掉. 二.默认值.如果不给列赋值的话,会使用默认值填上.操作:在表的设计界面,选择相应的列,在下面的属性面版中——默认值 如上图,选中Name列,在下面的属性面板中找到默认值,后面填上当该列未被赋值情况下自动赋值的元素

SQL数据库约束行为---防止数据完全重复

防止同一条数据完全重复: 一.主关键字约束:主键约束.1.能够唯一的区分每一行数据.——不许重2.表中的数据按照主键字排序的.——有序3.主键字不能为空——不为空4.一个表只能有一个主键,但可以设置组合主键.操作:在表的设计界面(在要加主键的表上面鼠标右键选择设计,如下图),在相应的列上,右击-"设为主键"/"删除主键".或点击左上角钥匙图标 代码实现: create table car1( code varchar(50) primary key, name va

sql 数据库中用创建好的视图修改表数据

只要满足下列条件,即可通过视图修改基础基表的数据: 1.任何修改(包括 UPDATE.INSERT 和 DELETE 语句)都只能引用一个基表的列. 2.视图中被修改的列必须直接引用表列中的基础数据.不能通过任何其他方式对这些列进行派生,如通过以下方式: 1)聚合函数:AVG.COUNT.SUM.MIN.MAX.GROUPING.STDEV.STDEVP.VAR 和 VARP.2)计算.不能从使用其他列的表达式中计算该列.使用集合运算符 UNION.UNION ALL.CROSSJOIN.EXC

SQL数据库同步工具(开辟数据同步工具)2.0 中文免费版

SQL数据库同步工具(开辟数据同步工具)本系统分为客户端和服务器两个部分,其中客户端承担了系统绝大数事务,服务器只是简单的执行客户端传送的命令,属于典型的C/S胖客户端瘦服务器模式.这样设计的目的是为了减轻服务器的压力,让系统更加流畅. 本系统分为客户端和服务器两个部分,其中客户端承担了系统绝大数事务,服务器只是简单的执行客户端传送的命令,属于典型的C/S胖客户端瘦服务器模式.这样设计的目的是为了减轻服务器的压力,让系统更加流畅. 客户端负责采集分布数据库中的数据,然后汇总到服务器.客户端需要配

使用达思SQL数据库修复软件导出数据库时的接收数据的数据库如何清空表数据?

清空表数据,保留视图,存储过程,函数,以及保留表约束.触发器等等,可以给故障数据库预留一个好的躯壳,把坏库数据导入此躯壳.对用友.金蝶等数据库恢复有时候能达到好的效果. 清除表数据有两种方法: 一种用delete from [表名] ,这种方法对于大数据库,速度慢,会产生很大的日志信息,对于小库,速度可以忽略: 另一种是truncate table [表名] ,这种方法速度快,但清除不了具有外键的表数据. 在清除表数据时,可以采用两种方法结合. 清除表数据时先禁用一切约束,清除完成以后再次启用约

sql数据库中查询第几条到第几条的数据

通用方法: select top 500 * from (select top 1000 * from UserSearchDatas order by ID) a order by ID desc sql数据库中查询第几条到第几条的数据,布布扣,bubuko.com

EXCEL页面数据快速写入SQL数据库

将EXCEL数据存入SQL表, 一万行记录大概5秒 Dim conn As New ADODB.Connection Dim CNN As New ADODB.Connection 'Dim rst As New ADODB.Recordset Dim Sql As String Dim j, v As Integer Const cnnstr = "Provider = SQLOLEDB;" & _ "Data Source = ip;" & _

sql数据库删除表的外键约束(INSERT 语句与 FOREIGN KEY 约束"XXX"冲突。该冲突发生于数据库"XXX",表"XXX", column 'XXX)

使用如下SQL语句查询出表中外键约束名称: 1 select name 2 from sys.foreign_key_columns f join sys.objects o on f.constraint_object_id=o.object_id 3 where f.parent_object_id=object_id('表名') 执行如下SQL语句删除即可. 1 alter table 表名 drop constraint 外键约束名 sql数据库删除表的外键约束(INSERT 语句与 F