查询
所有文档

          数据仓库 Palo

          查询

          Palo 支持 Mysql 协议访问。您可以使用任意只用标准的 Mysql 客户端或程序库访问 Palo。

          使用 MySQL 查询

          通过 MySQL 客户端连接到 Palo 以后,可以通过 show databases; 查看数据库。使用 use db_name; 选择数据库,使用 show tables; 查看数据库中的表。

          palo_quickstart_sql_1.png

          可以通过 help create database;help create table; 查看建库和建表帮助。

          执行查询的时候,只要直接输入SQL语句即可

          palo_quickstart_sql_2.png

          使用 JDBC/ODBC 查询

          可以使用 JDBC/ODBC 连接 Palo,连接 url 在集群信息页面可以获得。下面是 JDBC 的示例代码,需要使用 MySQL 的 JDBC 驱动

          import java.sql.DriverManager;
          import java.sql.ResultSet;
          import java.sql.SQLException;
             
          public class Test {
              public static void main(String[] args) {
                  // 加载驱动程序
                  try {
                      Class.forName("com.mysql.jdbc.Driver");
                  } catch (ClassNotFoundException e) {
                      e.printStackTrace();
                  }
            
                  // 创建数据库连接
                  java.sql.Connection conn = null;
                  try {
                      String url = "jdbc:mysql://your_cluster_node:9030/testDb";
                      String user = "admin";
                      String password = "my_password";
                      conn = DriverManager.getConnection(url, user, password);
                  } catch (SQLException e) {
                    e.printStackTrace();
                  }
            
                  // 发起查询,取结果
                  java.sql.Statement stmt = null;
                  ResultSet rs = null;
                  try {
                      stmt = conn.createStatement();
                      rs = stmt.executeQuery("select * from testTable limit 10");
                      while (rs.next()) {
                          System.out.print(rs.getInt("k1") + " ");
                          System.out.println(rs.getString("k2") + " ");
                      }
                  } catch (SQLException e) {
                      e.printStackTrace();
                  }
           
                  // 关闭数据库连接
                  try {
                      conn.close();
                  } catch (SQLException e) {
                      e.printStackTrace();
                  }
              }
          }