该文章主要内容为表结构的变化,包括表名修改、字段的新增、删除和修改,下面为具体内容:

一、新建表

1,Oracle

create table oracle_test(
name       varchar(20)       comment '姓名'
,age       decimal(3)        comment '年龄'
,sex       varchar(10)       comment '性别'
,school    varchar(40)       comment '学校'
)
;

2,hive

create table hive_test(
name       string       comment '姓名'
,age       decimal(3)   comment '年龄'
,sex       string       comment '性别'
,school    string       comment '学校'
)
row format delimited
fields teminated by '\t'
;

二、修改表名

1,Oracle

格式:rename 当前表名 to 新表名;
示例:rename oracle_test to oracle_test2;
释义:修改表oracle_test的表名为oracle_test2

2,hive

格式:alter table 表原来的名字 rename to 表新的名字
示例:alter table hive_test rename to students;
释义:将表名由 hive_test 修改为 students 。

三、修改列名

1,Oracle

格式:alter table 表名 rename column 当前列名 to 新列名;
示例:alter table oracle_test rename column age to birthday;
释义:修改表oracle_test的age字段名称为birthday

2,hive

格式:alter table 表名字 change column 列原来的名字 列的新名字 列的新字段类型
示例:alter table hive_test change column school class string;
释义:将表 hive_test 的字段 school 修改为 class,并且字段类型为 string;

四、新增字段

1,Oracle

格式:alter table 表名 add (新字段 字段类型(字段长度) );
示例:alter table oracle_test add (class varchar(20) );
释义:表oracle_test新增字段class,数据类型为varchar,字段长度为20

2,hive

格式:alter table 表名 add columns (新字段 字段类型 comment '字段注释');
示例:alter table hive_test add columns (c_time string comment '当前时间');
释义:表hive_test新增字段c_time,字段类型为string,注释为当前时间
注意:新增的字段会放在该表的最后一个字段位置

五、在指定位置新增字段

1,Oracle

Oracle只可以在表的最前面或者最后面新增字段,不可以指定字段的位置
(1)如果表很大需要采用视图的方式
(2)如果数据量不是很大,可以通过字段转移的方式,但是不推荐这种方式
(3)如果数据量很小,那就可以先删除,再新建表,但是再删除表之前,一定要做好数据的备份

2,hive

格式:alter table 表名 change 需要指定位置的字段 需要指定位置的字段 字段类型 after 指定的字段位置 ;
示例:alter table hive_test change c_time c_time string after sex ;
释义:将表hive_test的c_time字段指定到sex字段之后
注意:这里需要两步,先新增字段在表的最后,然后在指定字段的位置

六、删除表字段

1,Oracle

格式:alter table 表名 drop column 字段名;
示例:alter table oracle_test drop column sex;
释义:删除表oracle_test的sex字段

2,hive

hive中不支持alter table table_name drop columns这种语法,支持replace
可以采用:
-- 新建表,如果表存在,则直接进行删除字段的操作
create table hive_test2 (
col1 string,
col2 string);--删除column_2
alter table hive_test2 replace columns(
col1 string);    --col2 不写,即删除col2,保留col1

七、修改表的字段类型

1,Oracle

格式:alter table 表名 modify (字段名 字段类型 默认值 是否为空);//默认值和是否为空可以不写
示例:alter table oracle_test modify(age varchar(10));
释义:修改表oracle_test的age字段为varchar类型,字段长度为10

2,hive

格式:alter table 表名  change column 原字段名称  现字段名称  数据类型;
示例:alter table hive_test  change column age  age  string;
释义:修改表hive_test的age字段的数据类型为string

我是晓之以理的喵,欢迎大家多多交流~~

数据库表结构相关修改相关推荐

  1. sql+php修改mysql结构,MSSQL_修改SQL-SERVER数据库表结构的SQL命令附sql命令行修改数据库,具体不废话了,请看下文代码 - phpStudy...

    修改SQL-SERVER数据库表结构的SQL命令附sql命令行修改数据库 具体不废话了,请看下文代码详细说明吧. 向表中增加一个 varchar 列: ALTER TABLE distributors ...

  2. MySQL数据库基础学习小终结:连接查询、表结构的修改、约束条件、MySQL与python交互

    目录 一.连接查询 1.内连接 2.外连接 二.表结构的修改--alter 1.修改表名 2.修改字段名 3.修改字段类型--modify 4.添加字段 (1)添加日期字段:datetime (2)e ...

  3. java 修改mysql数据库表结构_MYSQL数据库表结构优化方法详解

    摘要:这篇MySQL栏目下的"MYSQL数据库表结构优化方法详解",介绍的技术点是"mysql数据库表结构.MySQL数据库.数据库表结构.MySQL.据库表结构.数据库 ...

  4. 开源数据库表结构文档生成器

    大家好,我是TJ 一个励志推荐10000款开源项目与工具的程序员 TJ君前几天和一个在银行科技部上班的同学聚会,同学跟TJ君吐槽,一些小银行的科技表面看上去专业,实际各种马虎不负责. 打个比方,有一次 ...

  5. Activiti数据库表结构(表详细版)

    http://blog.csdn.net/hj7jay/article/details/51302829 1  Activiti数据库表结构 1.1      数据库表名说明 Activiti工作流总 ...

  6. navicat查询oracle表结构,利用Navicat Premium导出数据库表结构信息至Excel的方法

    因为要编写设计文档,需要用到数据库表结构,想要在word文档中以二维表格的形式展示,故借助Excel形成二维表格样式,还是很方便的样子! 1.新建查询,并将以下SQL语句修改至需要 SELECT CO ...

  7. Java实现生成数据库表结构文档(生成工具screw的使用)

    目录 一.screw介绍 1.简介 2.特点 3.文档格式 二.生成方式 2.1 方式1:使用 Java 代码 2.1.1 引入依赖 2.1.2 编写代码 2.1.3 测试 2.2 方式2:使用 Sp ...

  8. 用python画路飞代码_python 全栈开发,Day105(路飞其他数据库表结构,立即结算需求)...

    考试第三部分:Django 16.  列列举你熟悉的Http协议头以及作用.(1分) Accept-Charset: 用于告诉浏览器,客户机采用的编码 Host: 客户机通过这个头告诉服务器,想访问的 ...

  9. MySQL数据库表结构的设计

    一.前言 1.1 关系型数据库 数据库关系型模型的概念最早由"关系数据库之父"之称的埃德加·弗兰克·科德(Edgar Frank Codd或E. F. Codd)博士提出,1970 ...

最新文章

  1. 小学生也能看懂的微服务节点判活难题
  2. 关于AXI DMA CYCLIC 调试过程中的问题
  3. vue里碰到 $refs 的问题
  4. Windows Phone StackPanel 布局示例
  5. python 计算机程序设计-计算机程序设计(Python)
  6. PyQt5系列(一)第一个helloworld
  7. 页面性能优化的利器 — Timeline
  8. 电商设计中的一些概念
  9. 西门子阀门定位器安装教程来啦,不会安装的宝贝们仔细看看咯!
  10. 手机怎么将视频制作成GIF?手机端动态图片制作的方法
  11. 【原创】个人常用电脑软件、浏览器插件、手机APP常用推荐
  12. Alfresco文档管理系统 文档
  13. PHP解决验证码无法显示的方法
  14. unity 球体表面平均分割点
  15. Ubuntu20.04.iso光盘镜像源文件百度云下载
  16. Uniapp返回上一页触发页面更新
  17. MATLAB程序设计与应用 4.1 M文件
  18. 小米双剑出鞘,红米2、小米4S所到之处尸横满地?
  19. 白盒测试(单元测试JUnit使用断言assertThat中startsWith、endsWith方法)
  20. 人脸识别技术的简单认识(含原理)

热门文章

  1. Win 7 下eclipse添加Courier New字体
  2. NFS服务器的介绍与配置,史上大总结,含泪肝数夜
  3. mac小技巧:轻松查看查看已登账号的密码
  4. 沁恒CH582M开发板-2-按键扫描(按键控制LED亮灭)
  5. 用DOS-BOX搭建x86汇编语言学习环境
  6. k8s-整体概述和架构
  7. python循环嵌套三角形_python使用while、for及循环嵌套实现直角三角形及正、倒金字塔...
  8. CSS布局案例 5-51 折扇效果
  9. vue如何判断数组是否为空
  10. oracle streams缺点,streams 日差治理及监控