Hive(四):c#通过odbc访问hive
hive odbc 驱动配置成功后,通过c#访问就变得比较简单了,分为查询与更新操作,直接附上测试代码。在此过程中需要注意c#工程编译的目标平台
- 读写访问代码示例:
public class HiveOdbcClient
{
/// <summary>
///
/// </summary>
public static HiveOdbcClient Current
{
get { return new HiveOdbcClient(); }
} /// <summary>
///
/// </summary>
/// <param name="context"></param>
public void ExcuteNoQuery(string dns, string sql)
{
OdbcConnection conn = null; try
{
conn = new OdbcConnection(dns);
conn.Open();
OdbcCommand cmd = new OdbcCommand(sql, conn);
cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
throw ex;
}
finally
{
if (null != conn)
{
conn.Close();
}
}
} /// <summary>
///
/// </summary>
/// <param name="context"></param>
/// <returns></returns>
public DataSet Query(string dns, string sql,string tblName = "tbl")
{
DataSet set = new DataSet();
OdbcConnection conn = null; try
{
conn = new OdbcConnection(dns);
conn.Open();
OdbcCommand cmd = conn.CreateCommand();
cmd.CommandText = sql;
OdbcDataAdapter adapter = new OdbcDataAdapter(cmd);
adapter.Fill(set, tblName);
}
catch (Exception ex)
{
throw ex;
}
finally
{
if (null != conn)
{
conn.Close();
}
} return set;
}
} - 测试:新建一个控制台工程,测试表创建及数据插入,示例代码如下:
class Program
{ static void Main(string[] args)
{
Console.WriteLine("按任意键开始进行建表及数据插入测试");
Console.ReadKey(); string dns = "DSN=myhive;UID=hive;PWD="; string sql = "create table Employee(ID string,Code string,Name string)";
HiveOdbcClient.Current.ExcuteNoQuery(dns,sql); sql = "insert into table Employee values('002','002','zhangShan');";
HiveOdbcClient.Current.ExcuteNoQuery(dns, sql); Console.WriteLine("数据插入完成,按任意键退出");
Console.ReadKey();
} } - 使用上一章介绍的SQurriel 工具,执行: Select * from employee ,显示代码中插入的数据则OK
Hive(四):c#通过odbc访问hive的更多相关文章
- Spark访问Hive表
知识点1:Spark访问HIVE上面的数据 配置注意点:. 1.拷贝mysql-connector-java-5.1.38-bin.jar等相关的jar包到你${spark_home}/lib中(sp ...
- 其它语言通过HiveServer2访问Hive
先解释一下几个名词: metadata :hive元数据,即hive定义的表名,字段名,类型,分区,用户这些数据.一般存储关系型书库mysql中,在测试阶段也可以用hive内置Derby数据库. me ...
- 【hive】——Hive四种数据导入方式
Hive的几种常见的数据导入方式这里介绍四种:(1).从本地文件系统中导入数据到Hive表:(2).从HDFS上导入数据到Hive表:(3).从别的表中查询出相应的数据并导入到Hive表中:(4).在 ...
- Spark&Hive:如何使用scala开发spark访问hive作业,如何使用yarn resourcemanager。
背景: 接到任务,需要在一个一天数据量在460亿条记录的hive表中,筛选出某些host为特定的值时才解析该条记录的http_content中的经纬度: 解析规则譬如: 需要解析host: api.m ...
- SparkSQL On Yarn with Hive,操作和访问Hive表
转载自:http://lxw1234.com/archives/2015/08/466.htm 本文将介绍以yarn-cluster模式运行SparkSQL应用程序,访问和操作Hive中的表,这个和在 ...
- 使用spark访问hive错误记录
在spark集群中执行./spark-shell时报以下错误: 18/07/23 10:02:39 WARN DataNucleus.Connection: BoneCP specified but ...
- Hive四种数据导入方式介绍
问题导读 1.从本地文件系统中通过什么命令可导入数据到Hive表? 2.什么是动态分区插入? 3.该如何实现动态分区插入? 扩展: 这里可以和Hive中的三种不同的数据导出方式介绍进行对比? Hive ...
- spark on yarn模式下配置spark-sql访问hive元数据
spark on yarn模式下配置spark-sql访问hive元数据 目的:在spark on yarn模式下,执行spark-sql访问hive的元数据.并对比一下spark-sql 和hive ...
- pyinstaller打包python源程序访问hive
1.需求 使用hvie server一段时间后,业务部门需要自己不定时的查询业务数据,之前这一块都是他们提需求我们来做,后来发现这样重复一样的工作放在我们这边做是在没有效率,遂提出给他们工具或者web ...
随机推荐
- @Html.DropDownListFor 绑定列表项
MVC中为 DropDownListFor 绑定列表项, 一种方案从后台加载列表内容,通过ViewData传递到前台页面. View: <div class="editor-label ...
- Yocto 包管理 apt-get
/******************************************************************** * Yocto 包管理 apt-get * 说明: * 查一 ...
- WinDebug的一些基本使用命令
编号:1030时间:2016年8月3日14:25:51功能:WinDebug的一些基本使用命令 URL :http://blog.csdn.net/suxinpingtao51/article/det ...
- html中的元素和节点
元素(Element)和结点(Node)的区别, 元素是一个小范围的定义,必须是含有完整信息的结点才是一个元素,例如<div>...</div>. 但是一个结点不一定是一个元素 ...
- 阿里云2003服务器VPN搭建[转自阿里云官方论坛]
VPN可以应用在很多方面,很多公司只是拿它接入公司内部网络,但我们做安全的需要的是利用它做跳板上网(还有提高网速).这篇文章主要是针对这种应用来说的,包括公网VPN的配置. 服务器配置 前奏:关闭防火 ...
- jsp不能引用js,cs等解决办法
最近项目中使用到Spring3,在感叹Spring3注解配置清爽的同时竟然出现了这个不和谐的事情,实在无法忍受 问题:部署项目后程序加载或用浏览器访问时出现类似的警告,2011-01-19 10:52 ...
- c 函数及指针学习 6
不完整声明 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 /* 方法一 */ struct tag_a{ ...
- Apache使用mod_deflate模块压缩页面优化传输速度
可以写为一行,也可以写多行,默认为gzip SetOutputFilter DEFLATE # Restrict compression to these MIME types AddOutputFi ...
- php归获取当前目录下的二级目录数 和文件数
<?php header('Content-Type: text/html; charset=gb2312'); // $baseDir = "/www/u ...
- mysql时间类型在iBATIS框架下的问题(原创哦)
写代码时遇到一个没有搜到的错误,简单记录一下这个dubbo框架中出现的问题. 启动dubbo一个服务端的bat时报错如下