前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Oracle数据库学习之数据类型和表的操作「建议收藏」

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

作者头像
全栈程序员站长
发布2022-09-27 10:50:35
2860
发布2022-09-27 10:50:35
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君

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

代码语言:javascript
复制
--创建一张学生表(学生号,学生姓名,学生姓名,学生地址)
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(提交)

表的创建和修改表结构:

创建一张表:

代码语言:javascript
复制
--创建一张学生表(学生号,学生姓名,学生姓别,学生地址)
create table tab_stu(
       stu_id number,
       stu_name varchar2(10),
       stu_gender varchar2(10),
       stu_address varchar2(20)
);

修改表,添加字段:

代码语言:javascript
复制
--修改表
--在学生表增加一个字段,学生出生日期
alter table tab_stu
add date_birth date;

修改表,将地址长度增加到50

代码语言:javascript
复制
--修改表
--将地址修改成50长度
alter table tab_stu
modify stu_address varchar2(50);

修改表,删除一个字段

代码语言:javascript
复制
--修改表
--删除date_birth字段
alter table tab_stu
drop column date_birth;

修改表,修改字段的名称

代码语言:javascript
复制
--修改表
--修改stu_address为stu_add
alter table tab_stu
rename column stu_address
to stu_add;

修改表,修改表的名称

代码语言:javascript
复制
--修改表
--修改表的名称为tab_student
rename tab_stu to tab_student; 

添加注释和查看注释

代码语言:javascript
复制
--查看当前用户拥有表
select * from user_tables;
--查看注释,查看有注释的表
select * from user_tab_comments where comments is not null;
--查看注释,查看有注释的字段
select * from user_col_comments where comments is not null;

删除表和恢复表

代码语言:javascript
复制
--删除表
drop table tab_stu;
--恢复表,Oracle10g之后才有
flashback table tab_stu to before drop;

彻底删除表

代码语言:javascript
复制
--彻底删除表
drop table tab_stu purge;

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Oracle的数据类型:
  • 数据库表的命名规则:
  • SQL语句的分类:
  • 表的创建和修改表结构:
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档