首页 > 解决方案 > 如何使用 JBDC/ODBC 从 c# 代码连接到 Databricks 表?

问题描述

我已经创建了 ac# windows 服务,并希望使用 JDBC/ODBC 连接从 c# 代码连接到 Databricks Delta 表,并使用下面的主机更新/插入几个 databricks delta 表。

尝试使用 SIMBA ODBC 连接,但出现错误,因为找不到数据源名称且未指定默认驱动程序'

public static void Main(string[] args)
    {
        
        // Build connection string
        OdbcConnectionStringBuilder odbcConnectionStringBuilder = new OdbcConnectionStringBuilder
        {
            Driver = "Simba Spark ODBC Driver", //Simba Spark ODBC Driver
           Dsn = "Simba Spark"
        };
        odbcConnectionStringBuilder.Add("Host", "sas-tes-dev.cloud.databricks.com");
        odbcConnectionStringBuilder.Add("Port", "443");
        odbcConnectionStringBuilder.Add("SSL", "1");
        odbcConnectionStringBuilder.Add("ThriftTransport", "2");
        odbcConnectionStringBuilder.Add("AuthMech", "3");
        odbcConnectionStringBuilder.Add("UID", "token");
        odbcConnectionStringBuilder.Add("PWD", "dapisds62728299255b4");
        odbcConnectionStringBuilder.Add("HTTPPath", "sql/protocolv1/o/6709534942857832/0208-221830-graph177");


        using (OdbcConnection connection = new OdbcConnection(odbcConnectionStringBuilder.ConnectionString))
        {
            string sqlQuery = "select * from mpre_sm.innsme";
            OdbcCommand command = new OdbcCommand(sqlQuery, connection);
            connection.Open();
            OdbcDataReader reader = command.ExecuteReader();

            for (int i = 0; i < reader.FieldCount; i++)
            {
                Console.Write(reader.GetName(i) + "\t");
            }

            Console.Write("\n");

            reader.Close();
            command.Dispose();
        }
    }

请帮助提供 C# 代码片段和实现此目的的建议。

在此处输入图像描述

标签: c#.netdatabricksdelta-lakejdbc-odbc

解决方案


推荐阅读