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
分类:
Sql on hadoop
标签:
Hive
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 全程使用 AI 从 0 到 1 写了个小工具
· 快收藏!一个技巧从此不再搞混缓存穿透和缓存击穿
· AI 插件第二弹,更强更好用
· Blazor Hybrid适配到HarmonyOS系统