ORACLE增删改查以及case when的基本用法
1.创建table
create table test01(
id int not null primary key,
name varchar(8) not null,
gender varchar2(2) not null,
age int not null,
address varchar2(20) default ‘地址不详’ not null,
regdata date
);
约束
非空约束 not null
主键约束 primary key
外键约束
唯一约束 unique
检查约束 check
联合主键
constraint pk_id_username primary key(id,username);
查看数据字典
desc user_constraint
修改表时重命名
rename constraint a to b; --修改表删除约束--
禁用约束
disable constraint 约束名字;
删除约束
drop constraint 约束名字;
drop primary key;直接删除主键
外键约束
create table typeinfo(typeid varchar2(20) primary key, typename varchar2(20));
create table userinfo_f( id varchar2(10) primary key,username varchar2(20),typeid_new varchar2(10) references typeinfo(typeid));
insert into typeinfo values(1,1); 创建表时设置外键约束
constraint 名字 foregin
create table userinfo_f2 (id varchar2(20) primary key,username varchar2(20),typeid_new varchar2(10),constraint fk_typeid_new foreign key(typeid_new) references typeinfo(typeid));
create table userinfo_f3 (id varchar2(20) primary key,username varchar2(20),typeid_new varchar2(10),constraint fk_typeid_new1 foreign key(typeid_new) references typeinfo(typeid) on delete cascade); 外键约束包含
删除外键约束
禁用约束 disable constraint 约束名字;
删除约束 drop constraint 约束名字;
唯一约束 与主键区别 唯一约束可以有多个,只能有一个null
create table userinfo_u( id varchar2(20) primary key,username varchar2(20) unique,userpwd varchar2(20)); 创建表时添加约束
constraint 约束名字 unique(列名);
修改表时添加唯一约束 add constraint 约束名字 unique(列名); 检查约束
create table userinfo_c( id varchar2(20) primary key,username varchar2(20), salary number(5,0) check(salary>50));
constraint ck_salary check(salary>50); /* 获取表:*/
select table_name from user_tables; //当前用户的表
select table_name from all_tables; //所有用户的表
select table_name from dba_tables; //包括系统表
select table_name from dba_tables where owner=’zfxfzb’ /*
2.修改表
alter table test01 add constraint s_id primary key; alter table test01 add constraint CK_INFOS_GENDER check(gender=’男’ or gender=’女’) alter table test01 add constraint CK_INFOS_AGE(age>=0 and age<=50) alter table 表名 modify 字段名 default 默认值; //更改字段类型 alter table 表名 add 列名 字段类型; //增加字段类型 alter table 表名 drop column 字段名; //删除字段名 alter table 表名 rename column 列名 to 列名 //修改字段名 rename 表名 to 表名 //修改表名
3.删除表格
truncate table 表名 //删除表中的所有数据,速度比delete快很多,截断表 delete from table 条件// drop table 表名 //删除表
4.插入语句
insert into 表名(值1,值2) values(值1,值2);
5.修改语句
update 表名 set 字段=值 [修改条件] update t_scrm_db_app_user set password = :pwd where login_name = :user
6.查询语句
带条件的查询
where 模糊查询
like % _ 范围查询
in 对查询结果进行排序
order by desc||asc
7.case when
select username,case username when ‘aaa’ then ‘计算机部门’ when ‘bbb’ then ‘市场部门’ else ‘其他部门’ end as 部门 from users; select username,case username=’aaa’ then ‘计算机部门’ when username=’bbb’ then ‘市场部门’ else ‘其他部门’ as 部门 from users;
8.运算符和表达式
算数运算符和比较运算符
distinct 去除多余的行
column 可以为字段设置别名 比如 column column_name heading new_name
decode 函数的使用 类似于case…when
select username,decode(username,’aaa’,’计算机部门’,’bbb’,’市场部门’,’其他’) as 部门 from users;
9.复制表
create table 表名 as 一个查询结果 //复制查询结果
insert into 表名 值 一个查询结果 //添加时查询
10.查看表空间
desc test01;
11.创建表空间
永久表空间
create tablespace test1_tablespace datafile ‘testfile.dbf’ size 10m; 临时表空间
create temporary tablespace temptest1_tablespace tempfile ‘tempfile.dbf’ size 10m; desc dba_data_files; select file_name from dba_data_files where tablespace_name=’TEST1_TABLESPACE’;
ORACLE增删改查以及case when的基本用法的更多相关文章
- Oracle 增删改查
Oracle入门案例: 1.创建实体类Student 并重写ToString方法 package cn.happy.entity; public class Student { public Inte ...
- Java 数据库操作oracle增删改查,通用封装基于hashmap
pt1:首先安装oracle连接驱动 下载地址:https://pan.baidu.com/s/1jW_ofgU4eJmAn7Y2J5B46A 密码:epkz 1.将ojdbc6.jar导入项目中 ...
- oracle增删改查
=======================批量删除,只留前十条数据. delete from THIRD_PARTY_MERCHANT a where a.rowid in ( select ro ...
- Oracle增删改查sql语句
--创建表空间 create tablespace waterboss datafile 'd:\waterboss.dbf' size 100m autoextend on next 10m --创 ...
- oracle增删改查基本语法(DDL/DML)整理
DDL:Data Definition Language(数据库定义语言)DML:Data Manipulation Language(数据库操作语言) 一.表结构操作(create table.al ...
- sql server连接oracle并实现增删改查
需要一个软件ODAC112040Xcopy_64bit 我连接的oracle是11g r2 sqlserver 是 2016 软件下载 https://pan.baidu.com/s/1OpYmpR ...
- 对oracle里面clob字段里面xml的增删改查学习
这段时间,我使用系统表里面有clob字段里面存放的xml信息,我们如何对xml进行增删改查操作呢,自己参考了很多也学到很多,给大家分享一下 首先我们先建测试表 CREATE TABLE EFGP_23 ...
- Oracle 基本操作--数据类型、修改和删除表、增删改查和复制表
一.Oracle基础数据类型:数据类型: 创建数据表时,设计数据表的结构问题,也就是设计及确定数据表中各个列的数据类型,是数值.字符.日期还是图像等其他类型. 因为只有设计好数据表结构,系统才会在磁盘 ...
- Oracle学习总结_day01_day02_表的创建_增删改查_约束
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! 更新: SELECT * FROM (SELECT R ...
随机推荐
- Redis详解(三)——事务
Redis详解(三)--事务 Redis事务的概念: Redis 事务的本质是一组命令的集合.事务支持一次执行多个命令,一个事务中所有命令都会被序列化.在事务执行过程,会按照顺序串行化执行队列中的命令 ...
- haproxy+keepalive双主高可用实现负载均衡
转载自https://blog.51cto.com/3381847248/1977073 前面我已经介绍了haproxy结合keepalive做简单的双主高可用,如果不清楚的话,可以去我的上一 篇博客 ...
- 066、Java面向对象之以分步的方式实例化对象
01.代码如下: package TIANPAN; class Book { // 定义一个新的类 String title; // 书的名字 double price; // 书的价格 public ...
- 014.Oracle数据库,取本周第一天(星期一), 取本周最后一天(星期天)
/*取本周第一天(星期一),取本周最后一天(星期天)*/ SELECT trunc( SYSDATE, AS 星期一 , trunc( SYSDATE, AS 星期天 FROM dual; 效果如下: ...
- Jetbrains推出了一款新的编程字体Mono
今天看到新闻说Jetbrains推出了一款新的编程字体Mono,便到官网上下载试了一下, 在VS和VS Code中显示效果都非常不错,是并且支持连体,感兴趣的朋友可以到其官网下载试用一下.
- JAVA String类常用方法
一.String类String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.java把String类声明的final类,不能有类.String类对象创建 ...
- supervisor的介绍
1.supervisor 简介 Supervisor 是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统.它可以很方便的 ...
- Docker 搭建开源 CMDB平台 “OpsManage” 之 Mariadb
整理了一下文档 今天来构建mariadb 主机还是 centos 172.16.0.200 构建第二个images 直接shell.sh 完成 #!/bin/bash echo " ...
- 官网英文版学习——RabbitMQ学习笔记(四)Work queues
工作队列:把每个任务只发送给一个工作者. 上一篇我们是从一个指定的队列发送接收消息,在本文中,我们将创建一个工作队列,用于在多个工作者之间分配耗时的任务. 工作队列(即任务队列)背后的主要思想是避免立 ...
- 云时代架构阅读笔记一——Java性能优化(一)
Java语言学习了这么长时间之后,自己对于Java编程的一些细节还是稍微有点总结,正好根据云时代架构中<Java高级开发必会的50个性能优化的细节(珍藏版)>来叙述一些我和里面的点比较相符 ...