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;
            }
        }
    View Code

相关文章: