文档章节

大数据学习笔记-------------------(22)

henni_719
 henni_719
发布于 2017/03/14 17:25
字数 572
阅读 6
收藏 0

第22章数据库操作

22.1 创建数据库

         Hive是一个数据库技术,该技术可以定义数据库和表用于分析结构数据。结构化数据分析的主题是以表格方式存储数据,并传递查询以对其进行分析。本章是用来描述如何创建数据库。Hive包含一个默认的数据库(default)。

22.1.1创建数据库语句

         创建数据库的语句用来在Hive创建数据库。Hive中的数据库是命名空间(namespace)或表的集合。创建数据库的语法如下:

    

CREATEDATABASE|SCHEMA [IF NOT EXISTS] <database name>;

    这里,IF NOT EXISTS是一个可选子句,它通知用户已存在具有相同名称的数据库。可以在此命令中使用SCHEMA代替DATABASE。创建一个名为userdb的数据库的语法如下:

CREATE DATABASE [IF NOT EXISTS] userdb;

”或“
CREATESCHEMA userdb;

”命令执行成功,执行命令 "
show databases;

查看已有的数据库:

  

22.1.2 JDBC程序

创建数据库的JDBC程序:

import java.sql.SQLException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.DriverManager;
public class HiveCreateDb
{
	private static String driverName ="org.apache.hadoop.hive.jdbc.HiveDriver";
	public static void main(String[] args) throws SQLException
	{
		// Register driver and create driver instance
		Class.forName(driverName);
		// get connection
		Connection con = DriverManager.
		getConnection("jdbc:hive://localhost:10000/default", "", "");
		Statement stmt = con.createStatement();
		stmt.executeQuery("CREATE DATABASE userdb");
		System.out.println(“Database userdb created successfully.”);
		con.close();
	}
}

保存程序在文件HiveCreateDb.java中。执行如下命令进行编译和执行程序:

javac HiveCreateDb.java
java  HiveCreateDb

输出:

  Database userdbcreated successfully.

22.2 删除数据库

用Hive删除数据库。SCHEMA和DATABASE作用相同。

22.2.1 删除数据库语法

 删除数据库的语法是删除所有表和删除数据库。语法如下:

DROPDATABASE StatementDROP (DATABASE|SCHEMA) [IF EXISTS] database_name[RESTRICT|CASCADE];

执行命令删除数据库。删除数据库userdb。"

DROP DATABASE IF EXISTS userdb;

以下查询使用CASCADE删除数据库。 这意味着在删除数据库之前删除相应的表。执行命令:"

DROP DATABASE IF EXISTS userdb CASCADE;
"或着"
DROP SCHEMA userdb;

22.2.2 JDBC程序

import java.sql.SQLException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.DriverManager;
public class HiveDropDb
{
	private static String driverName ="org.apache.hadoop.hive.jdbc.HiveDriver";
	public static void main(String[] args) throws SQLException
	{
		// Register driver and create driver instance
		Class.forName(driverName);
		// get connection
		Connection con = DriverManager.
		getConnection("jdbc:hive://localhost:10000/default", "", "");
		Statement stmt = con.createStatement();
		stmt.executeQuery("DROP DATABASE userdb");
		System.out.println(“Drop userdb database successful.”);
		con.close();
	}
}


保存程序在一个HiveDropDb.java文件中。执行命令:

javac HiveDropDb.java
java  HiveDropDb

输出:"Drop userdbdatabase successful."

本文转载自:http://blog.csdn.net/henni_719/article/details/52910223

henni_719
粉丝 2
博文 466
码字总数 343938
作品 0
信阳
QA/测试工程师
私信 提问
20天,碎片化时间,266页西瓜书。大神笔记拿走,快速学起来

     五一小长假前,大数据文摘发起了打卡学习活动,收到了读者朋友的积极响应,也成了氛围良好的学习社区。目前,第三轮打卡学习活动即将接近尾声,文摘菌带大家一起来感受打卡学习社区...

大数据文摘
2018/05/13
0
0
AI角 | 把吴恩达深度学习系列课程画出来,这有份诚意满满的笔记求查收

在吴恩达机器学习系列课程完结后不久,一位名叫Tess Ferrandez的小姐姐在推特上分享了一套自己的课程笔记,瞬间收获了3k+赞和1k+转发。 不同于满屏公式代码的黑白笔记,这套信息图不仅知识点...

技术小能手
2018/03/19
0
0
把吴恩达深度学习系列课程画出来,这有份诚意满满的笔记求查收

     大数据文摘作品   在吴恩达机器学习系列课程完结后不久,一位名叫Tess Ferrandez的小姐姐在推特上分享了一套自己的课程笔记,瞬间收获了3k+赞和1k+转发。   不同于满屏公式代码...

大数据文摘
2018/03/19
0
0
Android实战经验之图像处理及特效处理的集锦(总结版)

1 Android学习笔记进阶之在图片上涂鸦(能清屏) 2 Android学习笔记之详细讲解画圆角图片 3 Android学习笔记进阶20之得到图片的缩略图 4 Android学习笔记进阶19之给图片加边框 5 Android学习笔...

xiaosi
2012/03/12
40.1K
25
只看视频不动手的你可能学了门假课程,李飞飞计算机视觉成名作斯坦福CS231n作业详解重磅来袭!

大数据文摘作品 看完视频并不是真正的学习了一遍,更重要的是写作业、动手实践、讨论,这才能把学到的知识真正掌握住。看完斯坦福CS231n的公开课,是不是觉得还不够过瘾?快来和文摘菌一起写...

大数据文摘
2018/01/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

CentOS7.6中安装使用fcitx框架

内容目录 一、为什么要使用fcitx?二、安装fcitx框架三、安装搜狗输入法 一、为什么要使用fcitx? Gnome3桌面自带的输入法框架为ibus,而在使用ibus时会时不时出现卡顿无法输入的现象。 搜狗和...

技术训练营
昨天
5
0
《Designing.Data-Intensive.Applications》笔记 四

第九章 一致性与共识 分布式系统最重要的的抽象之一是共识(consensus):让所有的节点对某件事达成一致。 最终一致性(eventual consistency)只提供较弱的保证,需要探索更高的一致性保证(stro...

丰田破产标志
昨天
8
0
docker 使用mysql

1, 进入容器 比如 myslq1 里面进行操作 docker exec -it mysql1 /bin/bash 2. 退出 容器 交互: exit 3. mysql 启动在容器里面,并且 可以本地连接mysql docker run --name mysql1 --env MY...

之渊
昨天
10
0
python数据结构

1、字符串及其方法(案例来自Python-100-Days) def main(): str1 = 'hello, world!' # 通过len函数计算字符串的长度 print(len(str1)) # 13 # 获得字符串首字母大写的...

huijue
昨天
6
0
PHP+Ajax微信手机端九宫格抽奖实例

PHP+Ajax结合lottery.js制作的一款微信手机端九宫格抽奖实例,抽奖完成后有收货地址添加表单出现。支持可以设置中奖概率等。 奖品列表 <div class="lottery_list clearfix" id="lottery"> ......

ymkjs1990
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部