1.oracle之表管理sql
/*
数据类型
1. number(M,N) 整数位和小数位最多是M,其中小数位为N位
2. char(M):定长字符串,长度为M,如果插入数据时长度小于M,则在末尾补上空格
3. varchar2(M):不定长字符串,最大长度是M,如果插入数据时长度小于M,则按实际的数据插入,不作不空格的处理
4. date:日期
*/
/*
约束:约束是作用在表的字段上
1. 主键约束 primary key:唯一标识一行数据,唯一+非空
2. 非空约束not null:不能为空,不能往非空约束的列中插入null,空字符串''。如果表中已经有数据行,新增列时不能添加非空约束
3. 唯一约束unique:不允许有重复值,其中null是可以有重复
4. 默认约束default:默认值,如果插入数据时没有指定值则插入默认值,如果指定了值则取指定的值;只能在插入数据时起作用
5. 检查约束check: 字段值必须满足检查要求
6. 外键约束foreign key: 在其他表中是主键;插入数据时,外键字段值必须是主表存在的数据;主键表中数据被外键表引用,则主键表中数据不允许删除
*/
--新建表
/*
create table 表名(
列名1 数据类型 约束,
列名2 数据类型 约束,
列名3 数据类型 约束,
列名4 数据类型 约束,
列名N 数据类型 约束
);
*/
create table numberTest(
nn number(5,2) primary key, -- number(5,2)最小可以存放-999.99,最大是999.99
cc varchar2(20) not null,
ee date unique,
ff varchar2(10) default 'hello',
gender varchar2(10) check (gender='male' or gender='female')
);
--查询数据teacherinfo中的所有数据
select * from teacherinfo;
--插入数据
insert into teacherinfo values(2,'Lily','dsdfsfhsdhf',12);
--删除数据
delete from teacherinfo where ff=‘hello’;
--删除表
--drop table 表名;
drop table subject;
--修改表结构
--alter table 表名 add/ modify / drop column 列名 数据类型(长度) 约束;
--新增一列
alter table numberTest add tf varchar2(10) unique;
--修改列属性
alter table numberTest modify tf varchar2(20); --修改列数据类型、长度时,原有的约束不会变更
--修改字段名
--alter table 表名 rename column 原字段名 to 新字段名;
alter table numberTest rename column tf to tff;
--删除字段
--alter table 表名 drop column 字段名;
alter table numberTest drop column tff;
--外键的使用
create table teacherinfo(
teacherID number primary key,
teacherName varchar2(20),
teacherZC varchar2(100),
teacherJL number
);
create table subject(
subjectId number primary key,
subjectName varchar2(20),
subjectKS number,
teaID number references teacherinfo(teacherID) --列名 数据类型 references 主表表名(主表主键名)
);
1.oracle之表管理sql的更多相关文章
- oracle 修改表的sql语句
oracle 修改表的sql语句 1增加一个列:ALTER TABLE 表名 ADD(列名 数据类型);如:ALTER TABLE emp ADD(license varchar2(256)) ...
- Oracle系统表整理 --sql
-- DBA/ALL/USER/V_$/GV_$/SESSION/INDEX开头的绝大部分都是视图-- DBA_TABLES意为DBA拥有的或可以访问的所有的关系表.-- ALL_TABLES意为某一 ...
- Oracle建表提示SQL 错误: ORA-00904: : 标识符无效
Oracle建表提示: 错误报告:SQL 错误: ORA-00904: : 标识符无效00904. 00000 - "%s: invalid identifier"*Cause: ...
- Oracle创建表管理表
--创建图书表 create table books_lib ( book_id ) primary key, --unique¬ null book_name ) not null ) ...
- oracle各种常用管理sql及其他 ---待续
启动客户端工具:sqlplus /nolog 使用sysdba链接:conn / as sysdba; select * from dba_users; --查看数据库里面所有用户,前提是你是有dba ...
- Oracle建表和SQL语句的增删改
创建表 --建表语法结构: /* CREATE TABLE 表名( 字段名1 数据类型, 字段名2 数据类型 .... ); */ --建一张老师表,里面包含老师编号,老师姓名,老师联系方式,老师入职 ...
- 2.oracle之用户管理sql
--创建用户--create user 用户名 identified by 密码;create user jojo identified by bean; --给用户授权--grant conn ...
- 创建oracle数据表示例sql
CREATE TABLE "BRAND_RELATION" ( "ID" NUMBER(10,0) NOT NULL ENABLE, ...
- Oracle创建表空间和表
创建表空间和表ORACLE物理上是由磁盘上的以下几种文件:数据文件和控制文件和LOGFILE构成的oracle中的表就是一张存储数据的表.表空间是逻辑上的划分.方便管理的.数据表空间 (Tablesp ...
随机推荐
- vs2017 exe在Linux上运行
1:将vs .netcore控制台项目发布打包(比如文件名为:demo2core.zip,以下会用到) 2:使用XShell软件连接Linux a.在linux上使用命令 id addr找出ip地址 ...
- Docker 构建镜像
Docker 构建镜像 1.首先,在项目的根目录下,新建一个文本文件.dockerignore,写入下面的内容. 下面三行代码表示: 1.这三个路径要排除,不要打包进入 image 文件. 2.如果你 ...
- oracle 11.2 asynch descriptor resize等待事件
asynch descriptor resize描述最近部分insert /*+ append */语句出现该等待时间,经查This event is set when the number of a ...
- Guitar Pro里的编谱方式怎么用?
今天来教大家如何使用Guitar Pro中的编谱方式来让我们的乐谱更加美观整齐耐看,我们一起get起来吧! 相信我们每一个人在使用Guitar Pro进行编曲创作时,都会碰到这种情况,在乐谱上,会看到 ...
- 实体关系图应用——google ads
实体关系 本页展示了 AdWords 实体的关系图,其中的可点击图片可帮助您找到最合适的文档. 表示法图例 实体:链接到相关性最高的指南. 基数:允许的实例数量.例如,1..\* 表示允许一个或多个. ...
- 廖雪峰 JavaScript 学习笔记(字符串、数组和对象)
字符串 1.和python一样,也是用' '或" "括起来的字符表示.但多行字符串是用反引号(esc下键)``,与之相对的是Python用''' '''三引号表示: 2.转义字符: ...
- Apache Solr入门教程(初学者之旅)
Apache Solr入门教程(初学者之旅) 写在前面:本文涉及solr入门的各方面,建议边思考边实践,相信能帮助你对solr有个清晰全面的了解并能简单实用. 在Apache Solr初学者教程的这个 ...
- js Infinity 属性
Infinity 属性用于存放表示正无穷大的数值. 说明 无法使用 for/in 循环来枚举 Infinity 属性,也不能用 delete 运算符来删除它. Infinity 不是常量,可以把它设置 ...
- 如何在nginx容器中使用ping、nslookup、ip、curl 等工具?
Nginx镜像太精简了,启动一个容器进行测试时,常用的网络工具都没有,可以使用下面的命令进行安装.也可以直接起一个busybox容器进行测试. apt update #ping apt install ...
- vue-update-表单形式复写方法上传图片
handleSave() { const formData = new FormData(); /* eslint-disable */ for (let key in this.dataInfo) ...