Hive基本操作之数据库操作与数据库表的操作

2021-02-05 11:24:10 浏览数 (1)

文章目录

  • 数据库操作
    • 创建数据库
    • 修改数据库
    • 查看数据库详细信息
    • 删除数据库
  • 数据库表操作
    • 创建数据库表
    • 查询表的类型
    • 修改表

数据库操作

创建数据库

代码语言:javascript复制
create database if not exists 数据库名;
use  数据库名;

说明:hive的表存放位置模式是由hive-site.xml当中的一个属性指定的

代码语言:javascript复制
<name>hive.metastore.warehouse.dir</name>
<value>存放路径</value>

创建数据库并指定hdfs存储位置

代码语言:javascript复制
create database 数据库名 location '路径';

修改数据库

可以使用alter database 命令来修改数据库的一些属性。但是数据库的元数据信息是不可更改的,包括数据库的名称以及数据库所在的位置

修改数据库的创建日期

代码语言:javascript复制
alter  database  数据库名 set  dbproperties('createtime'='20880611');

查看数据库详细信息

查看数据库基本信息

代码语言:javascript复制
desc  database 数据库名;

查看数据库更多详细信息

代码语言:javascript复制
desc database extended 数据库名;   

删除数据库

删除一个空数据库,如果数据库下面有数据表,那么就会报错

代码语言:javascript复制
drop  database  数据库名;

强制删除数据库,包含数据库下面的表一起删除

代码语言:javascript复制
drop  database  数据库名 cascade;   
//不要执行(危险动作)   

数据库表操作

创建数据库表

  1. 创建一个简单的表

use 数据库名; create table 表名(字段名1 字段类型1,字段名2 字段类型2,…); insert into 表名 values (字段1的值,字段2的值,…); select * from 表名;

  1. 创建表并指定字段之间的分隔符 (row format delimited fields terminated by ‘t’)

create table if not exists stu2(id int ,name string) row format delimited fields terminated by ‘t’ stored as textfile location ‘/user/stu2’;

insert into stu2 values (1,“zhangsan”); insert into stu2 values (2,“lisi”); insert into stu2 values (3,“wangwu”);

  1. 根据查询结果创建表 (as)

create table stu3 as select * from stu2;

  1. 根据已经存在的表结构创建表 ( like)

create table stu4 like stu2;

查询表的类型

desc formatted 表名;

修改表

  1. 表重命名

alter table 旧表名 rename to 新表名; 把表score4修改成score5 alter table score4 rename to score5;

  1. 增加/修改列信息

添加列 alter table 表名 add columns (字段名1 字段类型1,字段名2 字段类型2); 更新列 alter table 表名 change column mysco mysconew int;

  1. 删除表

drop table 表名;

0 人点赞