Oracle数据库学习之数据类型和表的操作「建议收藏」

Oracle数据库学习之数据类型和表的操作「建议收藏」Oracle的数据类型:字符型数据类型charvarcharvarchar2long这几个字段之间的区别:char的长度是固定的,而varchar2的长度是可以变化的。也就是char(20)和varchar2(20)都存储”abc”,char是占用20个字符的,而varchar2是占用3个字符空间的。但是char的效率要高与varchar。这也就是平时说的以空间换效率。如果有一

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Oracle的数据类型:

  • 字符型数据类型
    • char
    • varchar
    • varchar2
    • long
    • 这几个字段之间的区别:char的长度是固定的,而varchar2的长度是可以变化的。也就是char(20)和varchar2(20)都存储”abc”,char是占用20个字符的,而varchar2是占用3个字符空间的。但是char的效率要高与varchar。这也就是平时说的以空间换效率。如果有一行经常被修改,而且每次修改的长度不相同,这回引起行迁移的问题,是数据库设计进来避免的问题,这时候就用char代理varchar2会更好。
    • 一般情况下使用varchar2
  • 数值型:
    • number(<p>,<s>)
    • Integer
    • float
    • 一般使用number
  • 日期类型:
    • date 默认格式为:DD-MON-YY
    • timestamp,date的扩展。
    • 常用date
      --创建一张学生表(学生号,学生姓名,学生姓名,学生地址)
      create table tab_stu(
             stu_id number,
             stu_name varchar2(10),
             stu_gender varchar2(10),
             stu_address varchar2(20)
      );

  • LOB类型(存储大数据)
    • BLOB Binary Large Object 4G,二进制的大数据
    • CLOB Charset Large Object 4G 字符类型的大数据
    • 都不太使用

数据库表的命名规则:

  • 必须以字母开头。
  • 字符长度在1-30之间。
  • 只能包含A-Z,a-z,0-9,_,$和#
  • 被同一个用户拥有的对象不能有重复的名字。
  • 不能是Oracle服务器保留字。

SQL语句的分类:

  • DDL(Data Define Language 数据库定义语句)语句
    • 也就是对表的一些定义。例如 :create ,drop,alter等。
  • DML(Data Mainpulation Language 数据库操作语句)语句
    • 也就是Select,insert,update,delete等。
  • DCL(Data Control Language 数据库控制语句)语句
    • Grant(授权),Revoke(取消授权)
  • TCL(Transaction Control Language 事务控制语言)
    • savePoint(保存点)
    • rollback(回滚)
    • commit(提交)

表的创建和修改表结构:

  • 创建一张表:
    --创建一张学生表(学生号,学生姓名,学生姓别,学生地址)
    create table tab_stu(
           stu_id number,
           stu_name varchar2(10),
           stu_gender varchar2(10),
           stu_address varchar2(20)
    );

  • 修改表,添加字段:
    --修改表
    --在学生表增加一个字段,学生出生日期
    alter table tab_stu
    add date_birth date;

  • 修改表,将地址长度增加到50
    --修改表
    --将地址修改成50长度
    alter table tab_stu
    modify stu_address varchar2(50);

  • 修改表,删除一个字段
    --修改表
    --删除date_birth字段
    alter table tab_stu
    drop column date_birth;

  • 修改表,修改字段的名称
    --修改表
    --修改stu_address为stu_add
    alter table tab_stu
    rename column stu_address
    to stu_add;

  • 修改表,修改表的名称
    --修改表
    --修改表的名称为tab_student
    rename tab_stu to tab_student; 

  • 添加注释和查看注释
    --查看当前用户拥有表
    select * from user_tables;
    --查看注释,查看有注释的表
    select * from user_tab_comments where comments is not null;
    --查看注释,查看有注释的字段
    select * from user_col_comments where comments is not null;
    

  • 删除表和恢复表
    --删除表
    drop table tab_stu;
    --恢复表,Oracle10g之后才有
    flashback table tab_stu to before drop;

  • 彻底删除表
    --彻底删除表
    drop table tab_stu purge;

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/179218.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Python 第三方模块 科学计算 SciPy模块1 简介,常数,IO「建议收藏」

    Python 第三方模块 科学计算 SciPy模块1 简介,常数,IO「建议收藏」一.介绍1.介绍:SciPy是1个Python开源库,在BSD授权下发布,主要用于数学/科学/工程计算.SciPy依赖于NumPy来提供方便快速的n维数组操作.组合使用NumPy+SciPy+Matplotlib可以在很大程度上替代MATLAB,并且功能更强大,编程更容易…

    2022年6月28日
    29
  • python可以自动回收垃圾吗_python 数据清洗

    python可以自动回收垃圾吗_python 数据清洗前言现在的高级语言如java,c#等,都采用了垃圾回收机制,而不再像c,c++里,需要用户自己管理内存。自己管理内存及其自由,可以任意申请内存,但这如同一把双刃剑,可能会造成内存泄漏,空指针等bug

    2022年7月28日
    8
  • 国内免费php mysql空间,[php mysql]国内有什么好的免备案免费php+mysql空间

    国内免费php mysql空间,[php mysql]国内有什么好的免备案免费php+mysql空间国内有什么好的免备案免费php+mysql空间问题补充:稳定点的,速度过得去就可以.谢谢●我一直在用”主机屋”提供的免费空间.稳定性可以运作几年了.不用备案.用了马上就知道好.百度搜索”主机屋”php+mysql实现无限级分类问题补充:php+mysql实现无限级分类●项目思路分析:一个PHP项目要用到分类,但不确定分几级,所以就想做成无限级分类。一开始想是按以前一样,数据库建4个值,如下:…

    2022年6月29日
    29
  • 卸载Symantec Endpoint Protection, 无需密码的卸载方法

    卸载Symantec Endpoint Protection, 无需密码的卸载方法最近一次偶然的机会,被人装了个Symantec在电脑上,搞得各种报警,验证,烦死.然后就自然而然的想卸载掉这个该死的杀毒软件,没想到这个杀毒软件居然还是个流氓杀毒软件,卸

    2022年5月30日
    59
  • Hbase面试题(面经)整理

    Hbase面试题(面经)整理1.Hbase是什么?hbase的特点是什么?Hbase一个分布式的基于列式存储的数据库,基于Hadoop的hdfs存储,zookeeper进行管理。 Hbase适合存储半结构化或非结构化数据,对于数据结构字段不够确定或者杂乱无章很难按一个概念去抽取的数据。 Hbase为null的记录不会被存储。 基于的表包含rowkey,时间戳,和列族。新写入数据时,时间戳更新,同…

    2022年5月31日
    31
  • vue 的双向绑定原理「建议收藏」

    vue 的双向绑定原理「建议收藏」vue采用“数据劫持”和“观察者模式(又叫做发布者-订阅者模式)”相结合的方式,通过Object.defineProperty()来劫持各个属性的setter、getter,在数据变动时发布消息给订阅者,触发相应的监听回调。vue的双向绑定原理,分三步:第一步,“数据劫持”:vue用Object.defineProperty()方法实现数据劫持,为每个属性分配一个订阅者集合的管理数组dep; 第二步,“添加观察者”:在编译的时候在该属性的数组dep中添加订阅者,添加方式包括:v

    2022年8月31日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号