文章目录
- 数据库操作
- 创建数据库
- 修改数据库
- 查看数据库详细信息
- 删除数据库
- 数据库表操作
- 创建数据库表
- 查询表的类型
- 修改表
数据库操作
创建数据库
代码语言: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;
//不要执行(危险动作)
数据库表操作
创建数据库表
- 创建一个简单的表
use 数据库名; create table 表名(字段名1 字段类型1,字段名2 字段类型2,…); insert into 表名 values (字段1的值,字段2的值,…); select * from 表名;
- 创建表并指定字段之间的分隔符 (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”);
- 根据查询结果创建表 (as)
create table stu3 as select * from stu2;
- 根据已经存在的表结构创建表 ( like)
create table stu4 like stu2;
查询表的类型
desc formatted 表名;
修改表
- 表重命名
alter table 旧表名 rename to 新表名; 把表score4修改成score5 alter table score4 rename to score5;
- 增加/修改列信息
添加列 alter table 表名 add columns (字段名1 字段类型1,字段名2 字段类型2); 更新列 alter table 表名 change column mysco mysconew int;
- 删除表
drop table 表名;