使用create语句创建表

create table 表名

(

列名 类型 【null     |     not null】,

列名 类型 【null     |     not null】

)

在一个数据库中表名不允许重复,在同一张表中列名不允许重复,【null     |     not null】表示该列允许为空或非空,默认的情况下是非空的

举个栗子:

create table two
(
id number primary key,
nname varchar2(10) not null,
age number
)

create table productinfo
(
productid varchar2(10),
productname varchar2(20),
productprice number(8,2),
quantity number(10),
category varchar2(10),
desperation varchar2(1000),
origin varchar2(10)
)

使用Alter语句修改表

alter table 表名

add  列名| modify 列名|drop column 列名

modify 是修改一个已经存在的列名

举几个栗子:

alter table two
add sex char(3);

alter table two
modify nname varchar2(20);

alter table two
drop column sex;

drop table two;                       删除表

约束:

主键约束:每个数据表中只有一个主键约束,但是一个主键约束可以由数据表中多个列组成,关键字:primary key

create table two
(
id number primary key,
nname varchar2(10) not null,
age number
)

create table two
(
id number,
nname varchar2(10) not null,
age number,
primary key(id)
)

两种写法都可以

当然也可以用alter语句添加主键约束

alter table two
add constraint pk_name primary key(id);                                        ps:pk_name是约束名

移除约束

alter table two
drop constraint pk_name;

外键约束:可以保证使用外键约束的数据库列与引用的主键约束的数据列一致,外键约束在一个数据表中可以有多个

外键约束要在创建表的语句后面加上如下语句:

alter  table 表名

constraint ppk_name foreign key(nname) references 表名(表中的列) on delete cascade                   ps:on delete cascade 保证主键对应字段被删除时,外键对应字段也被删除

修改表结构时添加外键约束:

add constraint ppk_name foreign key(nname) references 表名(表中的列) on delete cascade

移除外键约束与一处主键约束同样

check约束:检查约束,规定每一个列能够输入的值,以保证数据的正确性

创建check约束可以在创建表的语句后面加上如下操作:

constraint constraint_name check(condition)

修改表结构时添加check约束

alter table 表名

add constraint constraint_name check(condition)

移除check约束:

alter table 表名

drop constraint constraint_name;

unique约束:唯一约束,这个设置在表中输入大的字段值都是唯一的,和主键约束非常相似,不同的是,unique约束在一张表中可以有多个

在创建表的语句后面加上如下语句即可以创建unique约束:

constraint constraint_name unique(列名)

在修改表结构时添加unique约束:

alter table 表名

add constraint constraint_name unique(列名)

移除unique约束:

同上

not null约束:非空约束,子啊创建表时添加非空约束,确保字段一定有输入值

创建not null 约束直接在字段后面直接写not null即可

修改表结构时添加not null约束:

alter table 表名

modify  列名 not null;

添加数据insert:

insert into 表名(列名1,列名2,……) values(值1,值2,……);

insert into 表名 values(值1,值2,……);

两种方法都可以,列名与值要一一对应,如果没有指明列名,那么表中有多少列都要按顺序添加顺序,没有非空约束的列可以用null值添加

也可以通过其它表来添加数据,不过要注意两张表列个数,数据类型要一致,否则会出现错误

insert into 表名(列名1,列名2,……) select 值1,值2,…… from 表2;

另一种创建表的方式:

create table 表名 as select 列名1,列名2,…… from 表2;

update修改数据:

update 表名 set  列名=新值,…… where 条件;

delete删除数据:

delete from 表名  where 条件                                                   切记不加条件就是删除全部数据,这是个灾难!

其他数据操纵语句:

truncate table 表名                        无条件删除表中全部记录,比delete更快一点

oracle——学习之路(SQL基础)的更多相关文章

  1. Oracle学习笔记三 SQL命令

    SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)  

  2. python学习之路-day2-pyth基础2

    一.        模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,第三方库存放位置:site-packages sys模块简介 导入模块 import sys 3 sys模 ...

  3. Python学习之路-Day2-Python基础2

    Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...

  4. Python学习之路-Day1-Python基础

    学习python的过程: 在茫茫的编程语言中我选择了python,因为感觉python很强大,能用到很多领域.我自己也学过一些编程语言,比如:C,java,php,html,css等.但是我感觉自己都 ...

  5. Python学习之路-Day2-Python基础3

    Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...

  6. 学习笔记:oracle学习三:SQL语言基础之sql语言简介、用户模式

    目录 1.sql语言简介 1.1 sql语言特点 1.2 sql语言分类 1.3 sql语言的编写规则 2.用户模式 2.1 模式与模式对象 2.2 实例模式scott 本系列是作为学习笔记,用于记录 ...

  7. oracle学习之路(四) ---------PL/SQL 表,二维数组(TABLE)

    LOB类型 ORACLE提供了LOB (Large OBject)类型.用于存储大的数据对象的类型.ORACLE眼下主要支持BFILE, BLOB, CLOB 及 NCLOB 类型. NCLOB 存储 ...

  8. 学习笔记:oracle学习三:SQL语言基础之检索数据:简单查询、筛选查询

    目录 1. 检索数据 1.1 简单查询 1.1.1 检索所有列 1.1.2 检索指定的列 1.1.3 查询日期列 1.1.4 带有表达式的select语句 1.1.5 为列指定别名 1.1.6 显示不 ...

  9. Oracle数据库之PL/SQL基础

    介绍PL/SQL之前,先介绍一个图像化工具:Oracle SQL Developer 在oracle的开发过程中, 我们难免会使用第三方开发的软件来辅助我们书写SQL, pl/sql是一个不错的sql ...

随机推荐

  1. Codeforces Round #369 (Div. 2) C 基本dp+暴力

    C. Coloring Trees time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...

  2. 图论小专题B

    2 树 2.1 树的定义 一个只有\(N-1\)条边,且任意两个点连通的图叫做树.通过这样定义的树往往是一棵无根树,而我们通常会任意选定一个根节点使其变成有根树.有根树可以定义"父亲和儿子& ...

  3. 什么是挂载?mount的用处在哪?

    关于挂载的作用一直不是很清楚,今天在阅读教材时看见了mount这个命令,发现它的用处很隐晦但非常强大.奈何教材说的不明朗,因此在网上整合了一些优秀的解释,看完之后豁然开朗. 1.提一句Windows下 ...

  4. mysql: error while loading shared libraries: libnuma.so

    安装mysql后,执行初始化配置脚本,创建系统自带的数据库和表时报异常: [root@VM_0_12_centos mysql]# scripts/mysql_install_db --basedir ...

  5. Linux设备驱动程序 之 休眠

    休眠简介 当一个进程被置入休眠时,它会被标记为一种特殊状态,并从调度器的运行队列中移走:直到某些情况下修改了这个状态,进程才会在任意cpu上调度,即运行该进程:休眠中的进程会被搁置在一边,等待将来的某 ...

  6. LeetCode 10. 正则表达式匹配(Regular Expression Matching)

    题目描述 给定一个字符串 (s) 和一个字符模式 (p).实现支持 '.' 和 '*' 的正则表达式匹配. '.' 匹配任意单个字符. '*' 匹配零个或多个前面的元素. 匹配应该覆盖整个字符串 (s ...

  7. 基于角色的权限控制系统(role-based access control)

    role-based access control(rbac),指对于不同角色的用户,拥有不同的权限 .用户对应一个角色,一个角色拥有若干权限,形成用户-角色-权限的关系,如下图所示.当一个用户进行访 ...

  8. 禁用显示GC 会有什么问题?-XX:+DisableExplicitGC

    -XX:+DisableExplicitGC

  9. SQL-W3School-基础:SQL 简介

    ylbtech-SQL-W3School-基础:SQL 简介 1.返回顶部 1. SQL 是用于访问和处理数据库的标准的计算机语言. 什么是 SQL? SQL 指结构化查询语言 SQL 使我们有能力访 ...

  10. css清除浮动的几种方式,哪种最合适?

    细心的人可能发现了,写的导航条中存在一个问题,那就是使用了float之后,父级盒子的高度变为0了. 我们来写一个例子来看一下,创建一个父级div,并设置border属性,然后下边创建两个子元素span ...