什么是数据库的约束?

 
数据库约束是防止非法记录的规则, 约束保存在数据字典(data dictionary)中, 约束可以被定义在列级或者表级。

  Oracle中包括一下集中约束:
  1. Not Null    - 明确一列数据不能包含null值
  2. Unique      - 强制所有数据行不能有重复值
  3. Primary Key - 每一行数据的唯一标示
  4. Foreign Key - 强制一列数据与引用表的外键约束关系
  5. Check       - 检查,明确规定一个必须为true的condition

时间: 2024-10-12 06:16:48

什么是数据库的约束?的相关文章

能否修改数据库的约束在网页中的提示消息?

问题描述 能否修改数据库的约束在网页中的提示消息? 如图,C#写的一个信息系统,在数据库中创建了unique约束,网页提交重复数据是会显示异常. 现在想请教一下,能否修改这个异常提示消息为类似于"提交的数据重复,请重新提交"? 解决方案 你用的什么语言? 可以用 try { ... } catch { throw Exception("你的错误信息"); }

SQLite数据库约束详解

一.约束 Constraints 在SQLite数据库中存储数据的时候,有一些数据有明显的约束条件. 比如一所学校关于教师的数据表,其中的字段列可能有如下约束: 年龄 - 至少大于20岁.如果你想录入一个小于20岁的教师,系统会报错. 国籍 - 默认中国.所谓默认,就是如果你不填写,系统自动填上默认值. 姓名 - 不能为空.每个人都有名字嘛. 员工号 - 唯一.这个可不能乱,工资发错了就麻烦了. 上面提到的大于.默认.不能为空.唯一等等,就是数据的约束条件. 我们在用CREATE TABLE 创

SQL Server创建数据库和数据表的相关约束实现方法_MsSql

本文分析了SQL Server创建数据库和数据表的相关约束实现方法.分享给大家供大家参考,具体如下: 创建约束语法如下: CREATE DATABASE [test] ON (NAME=N'test',FILENAME=N'd:\SQL2kt_Data\test.mdf',SIZE=3mb,MAXSIZE=UNLIMITED,FILEGROWTH=1MB) LOG ON (NAME=N'test_log',FILENAME=N'd:\SQL2kt_Data\test_log.ldf',SIZE=

SQL Server创建数据库和数据表的相关约束实现方法

本文分析了SQL Server创建数据库和数据表的相关约束实现方法.分享给大家供大家参考,具体如下: 创建约束语法如下: CREATE DATABASE [test] ON (NAME=N'test',FILENAME=N'd:\SQL2kt_Data\test.mdf',SIZE=3mb,MAXSIZE=UNLIMITED,FILEGROWTH=1MB) LOG ON (NAME=N'test_log',FILENAME=N'd:\SQL2kt_Data\test_log.ldf',SIZE=

自定义数据库物理表中各列字段的名称

数据|数据库 (一). 序幕 1.在实际的软件开发中大部分都是团队合作开发的,经常会出现这种情况,一个程序员只设计好数据库,由另一个程序员写程式.这就出现一个问题. 设计数据库的程序员 设计数据库字段名称命名习惯 与 写程式码程序员数据库命名习惯有些不同.  例如: 数据库程序员对 客户名称习惯命名"CustomerName" ,而写程式代码程序员习惯命名"CusName",这样,写程式代码程序员在使用时,可能会大量使用类似:DataSet.Row[0]["

Visual Studio .NET Enterprise Architect 中基于 Visio 的数据库建模:第二部分

enterprise|visual|数据|数据库  Terry HalpinMicrosoft Corporation 2001年11月 摘要:本文是介绍 Microsoft Visual Studio Enterprise Architect 中基于 Visio 的数据库建模组件系列文章中的第二篇.第一部分讨论了如何创建新的对象角色建模 (ORM) 源模型,如何在 fact editor(事实编辑器)中添加句子类型.基本内部约束及示例,如何将事实类型从 business rules edito

插入-关于数据库建表的问题

问题描述 关于数据库建表的问题 建表的时候的约束条件是要写的详细越好吗?还是在插入的时候做好各种验证在插入 解决方案 约束主要用于导致数据库严重错误的违例. 比如说用户名加上唯一约束就很有必要.否则查询出来不止一个,删除的时候根据用户名删除结果删除了别人,这种东西最好做约束. 但是电子邮件和电话的格式,这个就不算很必要的了,适合放在程序中,而且便于根据业务的需要修改(比如电话升位了) 尽管有了数据库的约束,程序中也应该有相应的判断,并且给用户和上一层调用者足够的错误信息. 解决方案二: 外键约束

写给开发者看的关系型数据库设计

数据库设计,一个软件项目成功的基石.很多从业人员都认为,数据库设计其实不那么重要.现实中的情景也相当雷同,开发人员的数量是数据库设计人员的数倍.多数人使用数据库中的一部分,所以也会把数据库设计想的如此简单.其实不然,数据库设计也是门学问. 从笔者的经历看来,笔者更赞成在项目早期由开发者进行数据库设计(后期调优需要DBA).根据笔者的项目经验,一个精通OOP和ORM的开发者,设计的数据库往往更为合理,更能适应需求的变化,如果追其原因,笔者个人猜测是因为数据库的规范化,与OO的部分思想雷同(如内聚)

09. 约束与索引的联系

原文:09. 约束与索引的联系 之所以把约束和索引放到一起来看,主要是因为主键约束和唯一键约束,它们会自动创建一个对应的索引,先分别看下数据库中的几个约束. 一 约束 在关系型数据库里,通常有5种约束,示例如下: use tempdb go create table s ( sid varchar(20), sname varchar(20), ssex varchar(2) check(ssex='男' or ssex='女') default '男', sage int check(sage