1、修改表名
    alter table table_name rename to new_table_name;
2、修改列名
    alter table tablename change column column_orign column_new int(修改后列的属性) comment 'column_name'
    after severity;//可以把该列放到指定列的后面,或者使用‘first’放到第一位
    将表tablename中的列column_orign修改成column_new,同时指定修改后的列名称的属性,comment是这个列的注释
3、增加列
    alter table tablename add columns(column1 string comment 'xxxx',column2 long comment 'yyyy')
4、查看表的属性
    desc formatted tablename;
5、修改表的属性
    (1)alter table table_name set tblproperties('property_name'='new_value');
       将table_name表中的comment属性值修改成'new_value';
    (2)alter table table_name set serdepropertyes('field.delim'='\t');
       将表table_name中的字段分割符修改成'\t',注意,这是在表没有分区的情况下
    例1:create table t8(time string,country string,province string,city string)row format delimited fields terminated by '#' lines terminated by '\n' stored as textfile;
       alter table t8 set serdepropertyes('field.delim'='\t');这条语句将t8表中的字段分隔符'#'修改成'\t';
    例2:create table t9(time string,country string,province string,city string) partitioned by(dt=string) row foramt delimited fields terminated by '\n' stored as textfile;
       alter table t9 partition(dt='20140901') set serdepropertyes('field.delim=\t');
    (3)alter table table_name[partition] set location 'path'
       alter table table_name set TBLPROPERTIES('EXTERNAL'='TRUE');//内部表转化成外部表
       alter table table_name set TBLPROPERTIES('EXTERNAL'='FALSE');//外部表转成内部表
    Tip:首先在Hadoop上新建一个文件夹,'hadoop fs -mkdir /fould_name',然后向文件夹下面上传数据:'hadoop fs copyFromLocal /root/data /location',这句命令
    代表了将'/root/data'目录下的data文件上传到hadoop的location文件夹下,可以通过命令'hadoop fs -ls /location'命令查看location文件夹下的文件。
    在(2)中,t9表的位置在:'/hive/t9'目录下,然后通过命令:'alter table city set location 'hdfs://hadoop:9000/location'可以将表t9的位置更改为:hadoop下的/location文件夹下面;
    同时还必须注意的是,由于t9默认是内表,所以在删除表t9时,它的数据包括文件目录全部被删除,为了防止这种情况发生,可以将表t9修改成外表,通过语句:alter table t9 set tblproperties('EXTERNAL'='TRUE');
    以此类推,同样也可以将外部表修改为内部表,可以通过语句:alter table city set tblproperties('EXTERNAL'='FALSE');
    (4)其他修改表属性的命令:alter table properties; alter serde properties; alter table/partition file format; alter table storage properties; alter table rename partition; alter table set location;
    详细说明可以参考:Hive官网,在官网中找:wiki LanguageManual DDL来查询详细介绍

Hive学习之更改表的属性的更多相关文章

  1. Hive学习之修改表、分区、列

    Hive学习之修改表.分区.列 https://blog.csdn.net/skywalker_only/article/details/30224309 https://www.cnblogs.co ...

  2. Hive学习之路 (三)Hive元数据信息对应MySQL数据库表

    概述 Hive 的元数据信息通常存储在关系型数据库中,常用MySQL数据库作为元数据库管理.上一篇hive的安装也是将元数据信息存放在MySQL数据库中. Hive的元数据信息在MySQL数据中有57 ...

  3. hive中更改表impala中不能生效

    hive中的更新或者新建表impala 不能实时更新 Impala是基于Hive的大数据实时分析查询引擎,直接使用Hive的元数据库Metadata,意味着impala元数据都存储在Hive的meta ...

  4. hive学习笔记之三:内部表和外部表

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  5. HTML5 学习笔记 表单属性

    HTML5新的表单属性 HTML5 的form和input 标签添加了几个新的属性 <form>新属性 autocomplete novalidate input 新属性 autocomp ...

  6. Html5学习进阶四 表单元素和表单属性

    HTML5 的新的表单元素: HTML5 拥有若干涉及表单的元素和属性. 本章介绍以下新的表单元素: datalist keygen output 浏览器支持 Input type IE Firefo ...

  7. 【大数据】Hive学习笔记

    第1章 Hive基本概念 1.1 什么是Hive Hive:由Facebook开源用于解决海量结构化日志的数据统计. Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表, ...

  8. Hive 文件格式 & Hive操作(外部表、内部表、区、桶、视图、索引、join用法、内置操作符与函数、复合类型、用户自定义函数UDF、查询优化和权限控制)

    本博文的主要内容如下: Hive文件存储格式 Hive 操作之表操作:创建外.内部表 Hive操作之表操作:表查询 Hive操作之表操作:数据加载 Hive操作之表操作:插入单表.插入多表 Hive语 ...

  9. Hive学习笔记(一)

    摘要: Hive 是建立在 Hadoop 上的数据仓库基础构架.它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储.查询和分析存储在 Hadoop 中的大规模数据的机制.H ...

随机推荐

  1. Java操作XML文件 dom4j 篇

    在项目中,我们很多都用到了xml文件,无论是参数配置还是与其它系统的数据交互.今天就来讲一下Java 中使用dom4j来操作XML文件. 我们需要引入的包: //文件包 import java.io. ...

  2. httpclient response 重定向

    HTTPClient请求后,重定向后,获取重定向的URL. 方法一:重定向后获取URL import org.apache.http.HttpEntity; import org.apache.htt ...

  3. Fedora 20忘记root密码

    1.忘记root密码的情况下.用sudo账户$sudo su就行了. 2.直接sudo passwd root就重置了roor密码了.

  4. 关于在storyboard拖按钮控件,手动设置代码不成功的问题

    首先,在 storyboard 中拖拽一个按钮控件.设置好约束条件

  5. sql防注入代码

    function defend_sql($string, $force = 1) { $preg = "select|insert|and|or|update|delete|\'|\/\*| ...

  6. leetcode Generate Parentheses python

    # 解题思路:列举出所有合法的括号匹配,使用dfs.如果左括号的数量大于右括号的数量的话,就不能产生合法的括号匹配class Solution(object): def generateParenth ...

  7. OC语法9——Category类别

    Category(分类): 当我们在开发过程中要给类添加新的方法时,一般不要去动原类. 再不改动原类的限制下,怎么拓展类的方法?以往我们的做法是新建子类使其继承该类,然后通过子类拓展类的行为. OC提 ...

  8. js函数定时器,定时读取系统实时连接数

    function GetDeviceInfo() {     setInterval(function()         {         GetDeviceRealtimeConnect();  ...

  9. B/S结构和C/S结构

    概念: C/S结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境 ...

  10. C#学习日志 day 6 ------ 常用正则表达式例举

    c#支持正则表达式匹配文本,这里讨论一下正则表达式的使用方法以及例举一些常用的正则表达式的匹配. 1.在vs中使用正则表达式 在vs中使用正则表达式,需要using System.Text.Regul ...