关于oushudb-hawq:OushuDB-用户指南之编程接口

32次阅读

共计 1859 个字符,预计需要花费 5 分钟才能阅读完成。


因为 OushuDB 和 PostgreSQL 兼容,所以能够应用 PostgreSQL 的驱动和编程接口来拜访 OushuDB。

● https://jdbc.postgresql.org/
● https://www.postgresql.org/do…
● https://odbc.postgresql.org/

JDBC 例子
上面给出一个简略的 JDBC 拜访 OushuDB 的例子。

// OushuDBJDBC.javaimport java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.sql.DriverManager;import java.sql.ResultSetMetaData;public class OushuDBJDBC {public static Connection getConn() {Connection conn = null;try {Class.forName(“org.postgresql.Driver”);String url = “jdbc:postgresql://localhost:5432/postgres”;try {conn = DriverManager.getConnection(url, “ChangLei”, “”);}catch (SQLException e) {e.printStackTrace();}}catch (ClassNotFoundException e) {e.printStackTrace();}return conn;}public static void main(String[] args) {Connection conn= getConn();String sql = “select * from gp_segment_configuration”;try {Statement stmt=conn.createStatement();ResultSet rs=stmt.executeQuery(sql);ResultSetMetaData rsmd = rs.getMetaData();int numCol = rsmd.getColumnCount();for (int i = 0; i < numCol; i++) {System.out.print(rsmd.getColumnName(i + 1) + ‘ ‘);}System.out.println();while(rs.next()) {for (int i = 0; i < numCol; i++) {System.out.print(rs.getString(i + 1) + ‘ ‘);}System.out.println();}}catch (SQLException e) {e.printStackTrace();}}}

编译运行下面的代码须要上面几步:

● 装置 JDK,并确认 java 和 javac 命令工作
● 拷贝下面的代码到 OushuDBJDBC.java,须要更改上面这行外面的 OushuDB 用户名和明码。

为了拜访 OushuDB,如果你还没有一个用户,你须要创立一个用户,并为其调配权限,而且批改 pg_hba.conf 让该用户能够连贯数据库。能够参见如下连贯:

  • 创立用户:http://www.oushu.com/docs/haw… – 调配权限:http://www.oushu.com/docs/haw…
  • 批改 pg_hba.conf: https://www.postgresql.org/do… 留神批改 pg_hba.conf 后 master 节点须要从新加载 pg_hba.conf,能够应用命令:hawq stop
  • –reloadconn = DriverManager.getConnection(url, “ChangLei”, “”);

下载 JDBC 驱动:
wget https://jdbc.postgresql.org/d…
编译

javac -cp ./postgresql-9.4.1212.jar OushuDBJDBC.java
运行 OushuDBJDBC

changlei:dev ChangLei$ java OushuDBJDBC

registration_order role status port hostname address description
0 m u 5432 changlei changlei null
1 p u 40000 localhost 127.0.0.1

正文完
 0