HiveSQL 是 Hive查询语言。和普遍使用的SQL很类似。(与Mysql 最接近)
Hive不支持行级插入操作、更新操作和删除操作。
Hive不支持事物。
HiveSQL可以用于创建、修改、删除数据库、表、视图、函数和索引。
一.创建数据库
Hive中数据库的概念本质上仅仅是表的一个目录或者命名空间。
1.可以使用 SHOW DATABASES;
查看现有的数据有哪些
-
hive> show databases;
-
OK
-
default
-
temp
-
Time taken: 0.061 seconds, Fetched: 2 row(s)
也可以使用 SHOW DATABASES LIKE 't*';
查询相关的数据库
-
hive> show databases like \'t*\';
-
OK
-
temp
-
Time taken: 0.047 seconds, Fetched: 1 row(s)
2.使用 CREATE DATABASE IF NOT EXISTS dbname;
创建数据库
-
hive> create database mytest;
-
OK
-
Time taken: 0.315 seconds
使用DESCRIBE DATABASE 语句查看数据库
-
hive> describe database mytest;
-
OK
-
mytest hdfs://namenode:9000/user/hive/warehouse/mytest.db zhang USER
-
Time taken: 0.05 seconds, Fetched: 1 row(s)
可以看到数据库文件在HDFS中的路径位置。
在创建数据库的时候,我们可以自行指定数据文件创建的路径位置,以及添加描述信息等。
-
Time taken: 0.03 seconds, Fetched: 2 row(s)
-
hive> create database mytest
-
> comment \'this is my test hiveDB !\'
-
> location \'/my/testDB\';
-
OK
-
Time taken: 0.114 seconds
-
hive> describe database mytest;
-
OK
-
mytest this is my test hiveDB ! hdfs://namenode:9000/my/testDB zhang USER
-
Time taken: 0.052 seconds, Fetched: 1 row(s)
还有一个命令DESCRIBE DATABASE EXTENDED dbname ; (书上说是为数据库添加一些和其相关的 键-值 对 属性信息 ,没有太理解这块的用处是什么)
-
hive> drop database mytest;
-
OK
-
Time taken: 0.086 seconds
-
hive> show databases;
-
OK
-
default
-
temp
-
Time taken: 0.039 seconds, Fetched: 2 row(s)
-
hive> create database mytest
-
> with dbproperties (\'creator\' = \'criss\' ,\'date\' = \'2015-02-26\');
-
OK
-
Time taken: 0.078 seconds
-
hive> describe database mytest;
-
OK
-
mytest hdfs://namenode:9000/user/hive/warehouse/mytest.db zhang USER
-
Time taken: 0.032 seconds, Fetched: 1 row(s)
-
hive> describe database extended mytest;
-
OK
-
mytest hdfs://namenode:9000/user/hive/warehouse/mytest.db zhang USER {date=2015-02-26, creator=criss}
-
Time taken: 0.062 seconds, Fetched: 1 row(s)
可以使用 ALTER DATABASE 语句添加 键-值 信息 , 注意: 无法删除 或者 重置
-
hive> describe database extended mytest;
-
OK
-
mytest hdfs://namenode:9000/user/hive/warehouse/mytest.db zhang USER {date=2015-02-26, creator=criss}
-
Time taken: 0.062 seconds, Fetched: 1 row(s)
-
hive> alter database mytest set dbproperties (\'edited-by\' = \'zhang\');
-
OK
-
Time taken: 0.08 seconds
-
hive> describe database extended mytest;
-
OK
-
mytest hdfs://namenode:9000/user/hive/warehouse/mytest.db zhang USER {date=2015-02-26, creator=criss, edited-by=zhang}
-
Time taken: 0.055 seconds, Fetched: 1 row(s)
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/28929558/viewspace-1442107/
,如需转载,请注明出处,否则将追究法律责任。