一、数据库分类

  1、小型数据库:access、foxbase

  2、中型数据库:informix、sql server、mysql

  3、大型数据库:sybase、db2、oracle

二、注释

  1./*

  2020年11月6日

  这是Oracle中的多行注释

  */

  2.--这是Oracle的单行注释

三、常用命令

  1.数据类型

    (1)字符型:varchar2(20) 长度可变,最多容纳4000个字符。

    (2)数字类型:number范围-10的38次方到10的38次方,可以表示整数,也可以表示小数。

    (3)日期类型:date包含年月日和时分秒 oracle默认格式1-1月-1999。

  2.使用sql语句建表

    例如:学生表

      create table student(

      sno number(6),  --学号

      sname varchar2(20), --姓名

      birthday date,  --出生日期

      sex varchar2(3),  --性别

      tel varchar2(11)  --电话

     )

        班级表

    create table class(

    cno NUMBER(6), --课程编号

cname varchar2(20), --课程名称

credit varchar2(30), --课程学分

teacher varchar2(20) --授课老师

)

3.修改表

(1)--添加一个字段
sql>alter table student add (classid number(2));

(2)--删除字段

sql>alter table student drop(sname);

(3) --修改字段的类型或是名字或字段长度(不能有数据)

sql>alter table class MODIFY (cno varchar2(46));

sql>alter table class modify(credit number(11) ,teacher     number(3));

(4)--表重命名、修改表的名字

sql>rename student to stu;

4.--删除表

drop table stu;

drop table class;

四、约束条件

在oracle中,约束包括:not null、 unique, primary key,foreign ke和check 五种。

(1)、not null(非空)
如果在列上定义了not null,那么当插入数据时,必须为列提供数据。
(2)、unique(唯一)
当定义了唯一约束后,该列值是不能重复的,但是可以为null。
(3)、primary key(主键)
用于唯一的标示表行的数据,当定义主键约束后,该列不但不能重复而且不能为null。
需要说明的是:一张表最多只能有一个主键,但是可以有多个unqiue约束。
(4)、foreign key(外键)
用于定义主表和从表之间的关系。外键约束要定义在从表上,主表则必须具有主键约束或是unique 约束,当定义外键约束后,要求外键列数据必须在主表的主键列存在或是为null。
(5)、check(检查)
用于强制行数据必须满足的条件,假定在sal列上定义了check约束,并要求sal列值在1000-2000之间如果不在1000-2000之间就会提示出错。

(6) 实操如下:

1)、方法一

create table student(

sno number(7) primary key,

sname varchar2(20),

sex varchar2(18) default '女',

idcard varchar(30) constraint uq_card unique,

age number(3)

);

2)、方法二

create table student(

sno number(7),

sname varchar2(20) not null,

sex varchar2(18)default '女',

idcard varchar2(18),

age number(3),

constraint pk_sno primary key (sno),

constraint uq_card unique (idcard),

constraint ck_age check(age between 18 and 60)

);

3)、方法三

alter table student add(tel number(11) constraint ck_tel check(tel like '1%'));

Oracle初始——第一天的更多相关文章

  1. oracle初始安装大小

    oracle初始安装大小 /ruiy/ocr/DBSoftware/app/oracle/ruiy/ocr/DBSoftware/app/oraInventory/ruiy/ocr/DBData/or ...

  2. oracle 事务 第一弹

    一.事务概念 概念:在数据库中事务是工作的逻辑单元,一个事务是由一个或多个完成一组的相关行为的SQL语句组成,通过事务机制确保这一组SQL语句所作的操作要么完全成功执行,完成整个工作单元操作,要么一点 ...

  3. oracle学习 第一章 简单的查询语句 ——03

    1.1最简单的查询语句 例 1-1 SQL> select * from emp; 例 1-1 结果 这里的 * 号表示全部的列.它与在select 之后列出全部的列名是一样的.查询语句以分号( ...

  4. Oracle学习——第一章

    Oracle数据库特点:安全性高,数据类型丰富 Oracle是由美国甲骨文公司开发的一款数据库产品 -------------------------------------------------- ...

  5. 公司培训 oracle( 第一天)

    以前在学校学习Oracle的时候就对rowid 和rownum 这两个伪列有很大的疑惑,今天公司对16届新员工进行公司内部技术培训,课堂上的讲解,又让我想起来了曾经的疑惑点, 我想不能在让这个疑惑继续 ...

  6. 【Java EE 学习 27】【oracle学习第一天】

    一.oracle 11g安装的注意事项 1.超级管理员密码设置要符合要求(特别是不能以数字打头),否则在创建数据库的时候会产生ora-00922错误以及ora-28000错误. 解决方法:http:/ ...

  7. oracle系列--第一篇 数据库基础

    第一章 数据库基础 1.1 数据管理概述 1.1.1 什么是数据管理 与我们人类相比,计算机的最大优势就是能够高速.精准地运行,其运行的过程就是执行程序代码和操作指令.处理数据的过程.可以说,数据处理 ...

  8. Oracle学习第一天---安装和基础入门

    国庆七天假,决定静下心来入门Oracle数据库. 环境:Ocacle 11g 软件安装包和安装图解,大家可以在我的百度网盘上下载:链接:http://pan.baidu.com/s/1ntjDEnZ ...

  9. oracle查询第一篇

    第一个小知识点: clear 在oracle中也可以用以清除屏幕上的内容 第二个小知识点: 在一个表中插入自身的查询结果 insert into my_table (id,name,age) sele ...

随机推荐

  1. 第一次面试linux后台岗位

    今天给大家分享前段时间面试linux后台的面试题目,我从里面挑了几道大家比较陌生的题目,而且要那种手写代码的题目,这方面肯定很多人在实际面试时最怕的题目! 1.请说出如何用tcp服务实现文件的断点续传 ...

  2. Matlab中num2str函数的用法

    转载:https://blog.csdn.net/SMF0504/article/details/51836062 函数功能: 把数值转换成字符串, 转换后可以使用fprintf或disp函数进行输出 ...

  3. error C3861: “back_inserter”: 找不到标识符

    Reference:https://blog.csdn.net/taotaoah/article/details/52225364 and https://baike.baidu.com/item/c ...

  4. 晶振(crystal)与谐振荡器(oscillator)

    参考: 1. https://wenku.baidu.com/view/e609af62f5335a8102d2202f.html 2. 晶体振荡器也分为无源晶振和有源晶振两种类型.无源晶振与有源晶振 ...

  5. Inno Setup 5打包exe遇到的坑,做一个学习记录

    ; 脚本由 Inno Setup 脚本向导 生成!; 有关创建 Inno Setup 脚本文件的详细资料请查阅帮助文档! #define MyAppName "人员管理系统"#de ...

  6. Rolf Dobelli 《清醒思考的艺术》

    为了避免输光自己靠勤奋积累的财产,罗尔夫·多贝里列了一份系统性思维错误的清单.这一份清单可以和查理·芒格的<人类误判心理学>对照查看. 自本杰明·富兰克林以来,电闪雷鸣没有减少变弱或响声变 ...

  7. 「DevOps 转型与实践」沙龙回顾第二讲

    背景介绍 本期分享内容为<平台化 DevOps-云计算与云原生模式下 DevOps 的建设实践>.目前,DevOps 越来越成为大家当前建设的热点,伴随着基础设施的转型和应用框架的转型,更 ...

  8. .NET Standard 系列

    .NET Standard 是一套正式的 .NET API 规范,有望在所有 .NET 实现中推出. 推出 .NET Standard 的背后动机是要提高 .NET 生态系统中的一致性. ECMA 3 ...

  9. npm npx cnpm yarn 的区别

    npm npm 是 Node.js 官方提供的包管理工具.用于 Node.js 包的发布.传播.依赖控制.npm 提供了命令行工具,使你可以方便地下载.安装.升级.删除包,也可以让你作为开发者发布并维 ...

  10. Acticiti流程引擎在已知当前流程定义id的情况下获取当前流程的所有信息(包括:节点和连线)

    这里我们已知流程已经部署,我的需求是获取当前流程的所有任务节点,我使用instanceof关键字来进行匹配 private List<UserTask> getProcessUserTas ...