oracle字段加约束,Oracle数据库的字段约束创建和维护示例

创建Oracle数据库的字段约束:

非空约束

唯一约束

对字段的取值的约束

默认值

外键约束

create table tab_class(

class_id number primary key,

class_name varchar2(10) not null unique

);

create table tab_stu(

stu_id number,

--学生姓名,不能为空,不能重复

stu_name varchar2(20) not null unique,

--学生姓名只能是male或female

stu_gender varchar2(6) not null check(stu_gender='male' or stu_gender='female'),

--学生年龄只能在18到60之间

stu_age number check(stu_age >18 and stu_age <60),

--邮箱可以不填写,填写的话不能相同

stu_email varchar2(30) unique,

stu_address varchar2(30),

--外键约束

class_id number not null references tab_class(class_id)

);

维护已经创建好的约束:

可添加或删除约束,但不能直接修改。

可使约束启用和禁用。

非空约束必须使用MODIFY子句增加。

为表增加主键约束:

--维护约束

--创建约束

create table tab_check(

che_id number,

che_name varchar2(20)

);

--为表增加主键约束

alter table tab_check

add constraints tab_check primary key(che_id);

添加唯一约束

--添加唯一约束,tab_check_unique表示约束的名称

alter table tab_check

add constraints tab_check_unique unique(che_name);

添加检查约束:

--添加一个字段

alter table tab_check

add che_age number;

--添加检查约束

alter table tab_check

add constraints tab_check_age check(che_age>18 and che_age<60);

删除约束:

--删除主键约束

alter table tab_check

drop constraints tab_check;

禁用约束:

--禁用约束

alter table tab_check disable constraints tab_check;

启用约束

--启用约束

alter table tab_check enable constraints tab_check;

复合约束,联合主键,也就是两个字段的组合成一个主键

--联合主键

create table tab_person(

tab_firstname varchar2(10),

tab_lastname varchar2(10),

tab_gender varchar2(5),

primary key(tab_firstname,tab_lastname)

);

为表添加外键约束:

alter table tab_stu

add constraints tab_stu foreign key(class_id) references tab_class(class_id);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/427013.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实例5:python

#输入三个整数x,y,z&#xff0c;请把这三个数由小到大输出。 l [] for i in range(3): x int(input(‘integer:\n’)) l.append(x) l.sort() print (l)

python识别节假日_Python3自动签到 定时任务 判断节假日的实例

不废话&#xff0c;直接上代码Python3.6签到代码&#xff0c;只需修改url&#xff0c;账号&#xff0c;密码即可&#xff0c;此处是登录时无验证登录&#xff0c;有验证码的自行补充# -*- coding:utf-8 -*-import jsonimport urllib.requestimport datetime# 模拟浏览器打开网站…

[BZOJ 5074] 小B的数字

题目传送-BZOJ5074 题意&#xff1a; T组数据 你有一个数组\(A\)&#xff0c;要求一个数组\(B\)\(B\)中的数都是2的正整数次幂。 令\(x\prod_{i1}^nB_i\),有\(x|B_i^{A_i},i\in1,2,3,...,n\)成立\(T \le 10,n \le 100000\) 题解&#xff1a; 首先\(B\)可以直接转化为每个元素的…

matlab数学实验第七章课后答案,matlab数学实验第七章答案

参考答案如下[单选,共用题干题] 患者男性&#xff0c;数学实验35岁&#xff0c;数学实验4天前因不慎划破皮肤后出现高热、皮肤瘀斑来院。查体&#xff1a;体温39.1℃&#xff0c;血压110&#xff0f;70mmHg&#xff0c;呼吸30次&#xff0f;分&#xff0c;心率107次&#xff0f…

Python List sort()方法

描述 sort() 函数用于对原列表进行排序&#xff0c;如果指定参数&#xff0c;则使用比较函数指定的比较函数。 语法 sort()方法语法&#xff1a; list.sort(cmpNone, keyNone, reverseFalse) 参数 • cmp – 可选参数, 如果指定了该参数会使用该参数的方法进行排序。 • key –…

oracle sql-1,Oracle – Oracle SQL(1)

Oracle – Oracle SQL(1)1. 简介(1) SQL : Structured Query Language&#xff0c;结构化查询语言&#xff0c;专门用于数据存取、数据更新及数据库管理等操作。(2) Oracle SQLDDL: Data Define Language数据定义语言包括CREATE、ALTER、DROP、TRUNCATE、COMMENT、RENAME等命令…

背景图层和普通图层的区别_008Photoshop四赞图层(图层样式)

图层过滤器图层滤镜&#xff0c;比如你只想看到像素图层&#xff0c;选择像素图层过滤器&#xff0c;这时就只能看到背景图层了(在图层面板)&#xff0c;如果再点击像素图层过滤器&#xff0c;其他图层又出现了。选中调整图层过滤器&#xff0c;就只能看到图层结构里的调整图层…

洛谷P3628 [APIO2010]特别行动队(斜率优化)

传送门 先写出转移方程$$dp[i]max\{dp[j]a*(sum[i]-sum[j])^2b*(sum[i]-sum[j])c\}$$ 假设$j$比$k$更优&#xff0c;则有$$dp[j]a*(sum[i]-sum[j])^2b*(sum[i]-sum[j])c>dp[k]a*(sum[i]-sum[k])^2b*(sum[i]-sum[k])c$$ 展开&#xff0c;并消去同类项之后得$$dp[j]-2*a*sum[i…

实例6:python

#斐波那契数列&#xff08;Fibonacci sequence&#xff09;&#xff0c;又称黄金分割数列&#xff0c;指的是这样一个数列&#xff1a;0、1、1、2、3、5、8、13、21、34、……。 #F0 0 (n0) #F1 1 (n1) #Fn F[n-1] Fn-2 #!/usr/bin/python -- coding: UTF-8 -- #def fib(…

简述oracle的主要数据库对象,Oracle数据库数据对象分析

Oracle数据库数据对象分析Oracle数据库数据对象中最基本的是表和视图&#xff0c;其他还有约束、序列、函数、存储过程、包、触发器等。对数据库的操作可以基本归结为对数据对象的操作,理解和掌握Oracle数据库对象是学习Oracle的捷径。表和视图Oracle中表是数据存储的基本结构。…

vue devtools面板没有显示_vue 基础入门(四)

vue 基础入门(四)1.全局配置Vue.config 是一个对象&#xff0c;包含 Vue 的全局配置。可以在启动应用之前修改下列 property&#xff1a;1.1 silent类型&#xff1a;boolean默认值&#xff1a;false用法&#xff1a;Vue.config.silent true❝取消 Vue 所有的日志与警告。❞1.2…

SpaceVim 语言模块 lua

原文连接&#xff1a; https://spacevim.org/cn/layers/lang/lua/ 模块简介启用模块快捷键 交互式编程运行当前脚本模块简介 这一模块为在 SpaceVim 中进行 lua 开发提供了支持&#xff0c;包括代码补全、语法检查、代码格式化、交互式编程以及调试等特性。 启用模块 可通过在配…

python之def

1.def &#xff08;define的前三个字母&#xff09;是一个关键字&#xff0c;用来声明函数。 2.def 声明函数的格式为&#xff1a; def 函数名(参数1&#xff0c;参数2&#xff0c;…&#xff0c;参数n)&#xff1a; 函数体 例如&#xff1a; def fib(n): print ‘n ’, n if n…

php pdo 00000,php-即使有错误,PDO错误代码也总是00000

我使用PHP 7.1.23测试了以下代码&#xff1a;$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES,true);$sth $pdo->prepare(select now() and this is a bad sql where a - b from c);if ($sth false) {echo "error on prepare()\n";print_r($pdo->errorInf…

vue 生命周期_Vue生命周期小白看了都会的

最近一直在学习Vue&#xff0c;而vue生命周期是我们不可能绕开的一个很核心的知识点&#xff0c;今天来简单的梳理一下大概的内容。一、钩子函数在一开始学习的时候&#xff0c;总有钩子函数这个名词冒出来&#xff0c;而且在vue官网文档中也频繁出现&#xff0c;也相信给很多初…

Mac/Ubuntu 上编译、搭建 WebRtc/licode 服务器

1.下代码 git clone https://github.com/ging/licode.git cd licode 2.安装依赖 2.1 配置ubuntu开发环境&#xff1a; 2.1.1 安装C/C开发环境 1. sudo apt-get -y install build-essential //安装主要编译工具 gcc, g, make 2. sudo apt-get -y install autoconf automake1.9 3…

实例7:python

#将一个列表的数据复制到另一个列表中。 #程序分析&#xff1a;使用列表[:]。 #程序源代码&#xff1a; #!/usr/bin/python -- coding: UTF-8 -- #a [1, 2, 3] #b a[:] #print (b) #import copy #a [1, 2, 3] #bcopy.copy(a) #print(b) #[1, 2, 3] #使用 Python3 的参…

Python3 字典 copy()方法

描述 Python 字典 copy() 函数返回一个字典的浅复制。 语法 copy()方法语法&#xff1a; dict.copy() 参数 • NA。 返回值 返回一个字典的浅复制。 实例 以下实例展示了 copy()函数的使用方法&#xff1a; 实例 #!/usr/bin/python3 dict1 {‘Name’: ‘Runoob’, ‘Age’: 7,…

php为什么搜不到字段,php-通过多个字段搜索.有时一个领域,有时不止一个领域

我有搜索表.在这里多个领域.有时我将使用一个字段提交表单,有时将使用两个字段提交表单,有时使用多个字段值.if (isset($_POST[search])) {$projectName $_POST[pName];$clientId $_POST[s_by_clientName];$departmentId $_POST[s_by_department];$statusName $_POST[s_by_…

python语言key_Python语言学习:字典常用的方法

1. 增加&#xff1a;字典[key]value(不存在的key和value)info{stu1101:TengLan,stu1102:LuoZe,stu1103:XiaoZe}info[stu1104]crystalprint(info) #输出结果&#xff1a;{stu1101: TengLan, stu1102: LuoZe, stu1103: XiaoZe, stu1104: crystal}2. 修改&#xff1a;字典[key]val…