返回首页

gbase数据、南大通用产品文档:GBase8a错误日志

更新日期:2024年09月11日

错误日志记录了集群节点上的错误事件,包括提示、警告和错误三种事件
类型,如下图所示:

GBase 8a MPP Cluster 管理工具手册

- 122 -

南大通用数据技术股份有限公司

图 7-111 错误日志
您可以使用过滤和查找功能查看您所关注的日志信息。

NATIONAL CHARACTER 相关操作
本示例实现了如下功能:

NationalCharacterSimple.simpleGetNClob 获取Nclob 类型内容。

NationalCharacterSimple.simpleSetNClob()通过
PreparedStatement.SetNClob 实现NClob 的存入数据库。

nationalCharacterSimple.simpleUpdateNClob()通过
PreparedStatement.UpdateNClob 实现Nclob 字段的更新。

GBase 8a 程序员手册JDBC 篇
南大通用数据技术股份有限公司

- 131 -
更多关于NATIONAL CHARACTER 操作示例请参照工程。
示例如下:
package com.gbase.jdbc.simple;

import java.io.Reader;
import java.io.StringReader;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.NClob;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class NationalCharacterSimple {

private static final String URL =
"jdbc:gbase://192.168.111.95:5258/test?user=sysdba&password=";

/**
* Runs all test cases in this test suite
*
* @param args
*/
public static void main(String[] args) {
NationalCharacterSimple nationalCharacterSimple = new
NationalCharacterSimple();
try {
nationalCharacterSimple.simpleGetNClob();
nationalCharacterSimple.simpleSetNClob();
nationalCharacterSimple.simpleUpdateNClob();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();

GBase 8a 程序员手册JDBC 篇


- 132 -

南大通用数据技术股份有限公司
}
}

/**
* Simple for ResultSet.getNClob()
*
* @throws Exception
*/
public void simpleGetNClob() throws Exception {
Connection conn = null;
Statement stm = null;
ResultSet rs = null;
try {
Class.forName("com.gbase.jdbc.Driver");
conn = DriverManager.getConnection(URL);
stm = conn.createStatement();
createTable("simpleGetNClob", "(c1 NATIONAL
CHARACTER(10), c2 NATIONAL CHARACTER(10))", stm);
stm.executeUpdate("INSERT
INTO
simpleGetNClob
(c1,
c2)
VALUES (_utf8 'aaa', _utf8 'bbb')");
rs = stm.executeQuery("SELECT c1, c2 FROM
simpleGetNClob");
rs.next();
char[] c1 = new char[3];

rs.getNClob(1).getCharacterStream().read(c1);
System.out.println(new String(c1));
char[] c2 = new char[3];

rs.getNClob("c2").getCharacterStream().read(c2);
System.out.println(new String(c2));

}catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block

GBase 8a 程序员手册JDBC 篇
南大通用数据技术股份有限公司

- 133 -
e.printStackTrace();
} finally {
try {
rs.close();
} catch (NullPointerException e) {
} catch (Exception e) {
rs = null;
}



try {
stm.close();
} catch (NullPointerException e) {
} catch (Exception e) {
stm = null;
}
try {
conn.close();
} catch (NullPointerException e) {
} catch (Exception e) {
conn = null;
}
}
}
/**
* Simple for PreparedStatement.setNClob()
*
* @throws Exception
*/
public void simpleSetNClob() throws Exception {

Connection conn = null;
Statement stm = null;
PreparedStatement pstm = null;
ResultSet rs = null;
try {
Class.forName("com.gbase.jdbc.Driver");
conn =
DriverManager.getConnection(URL+"&useServerPrepStmts=false&useUnicod

GBase 8a 程序员手册JDBC 篇


- 134 -

南大通用数据技术股份有限公司
e=true&characterEncoding=utf-8");
stm = conn.createStatement();

createTable("simpleSetNClob", "(c1 NATIONAL
CHARACTER(10), c2 NATIONAL CHARACTER(10), " +
"c3 NATIONAL CHARACTER(10))", stm);
pstm = conn.prepareStatement("INSERT INTO
simpleSetNClob (c1, c2, c3) VALUES (?, ?, ?)");
pstm.setNClob(1, (NClob)null);
NClob nclob2 = conn.createNClob();
nclob2.setString(1, "aaa");
pstm.setNClob(2, nclob2); // for
setNClob(int, NClob)

Reader reader3 = new StringReader("\'aaa\'");
reader3 = new StringReader("\'aaa\'");
pstm.setNClob(3, reader3, 5); // for
setNClob(int, Reader, long)
pstm.execute();
rs = stm.executeQuery("SELECT c1, c2, c3 FROM
simpleSetNClob");
rs.next();

//null
System.out.println(rs.getString(1));

//"aaa"
System.out.println(rs.getString(2));

//"\'aaa\'"
System.out.println(rs.getString(3));
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();

GBase 8a 程序员手册JDBC 篇
南大通用数据技术股份有限公司

- 135 -
}finally {
try {
rs.close();
} catch (NullPointerException e) {
} catch (Exception e) {
rs = null;
}



try {
stm.close();
} catch (NullPointerException e) {
} catch (Exception e) {
stm = null;
}
try {
pstm.close();
} catch (NullPointerException e) {
} catch (Exception e) {
pstm = null;
}
try {
conn.close();
} catch (NullPointerException e) {
} catch (Exception e) {
conn = null;
}
}
}
/**
* Simple for ResultSet.updateNClob()
*
* @throws Exception
*/
public void simpleUpdateNClob() throws Exception {

Connection conn = null;
Statement stm = null;
PreparedStatement pstm = null;

GBase 8a 程序员手册JDBC 篇


- 136 -

南大通用数据技术股份有限公司
ResultSet rs = null;
ResultSet rs2 = null;
try {
Class.forName("com.gbase.jdbc.Driver");
conn =
DriverManager.getConnection(URL+"&useUnicode=true&characterEncoding=
utf-8");
stm =
conn.createStatement(ResultSet.TYPE_FORWARD_ONLY,
ResultSet.CONCUR_UPDATABLE);

createTable("simpleUpdateNChlob",


"(c1 CHAR(10) PRIMARY KEY, c2
NATIONAL CHARACTER(10)) default character set utf8", stm);
pstm = conn.prepareStatement("INSERT INTO
simpleUpdateNChlob (c1, c2) VALUES (?, ?)");
pstm.setString(1, "1");
NClob nClob1 = conn.createNClob();
nClob1.setString(1, "aaa");
pstm.setNClob(2, nClob1);
pstm.execute();
rs = stm.executeQuery("SELECT c1, c2 FROM
simpleUpdateNChlob");
rs.next();
NClob nClob2 = conn.createNClob();
nClob2.setString(1, "bbb");
rs.updateNClob("c2", nClob2);
rs.updateRow();(移动到这行然后修改改行数据)
rs.moveToInsertRow();
rs.updateString("c1", "2");
NClob nClob3 = conn.createNClob();
nClob3.setString(1, "ccc");
rs.updateNClob("c2", nClob3);
rs.insertRow();(移动到插入点然后插入新数据)
rs2 = stm.executeQuery("SELECT c1, c2 FROM
simpleUpdateNChlob");
rs2.next();

GBase 8a 程序员手册JDBC 篇
南大通用数据技术股份有限公司

- 137 -

//"1"
System.out.println(rs2.getString("c1"));

//"bbb"

System.out.println(rs2.getNString("c2"));
rs2.next();

//"2"
System.out.println(rs2.getString("c1"));

//"ccc"

System.out.println(rs2.getNString("c2"));
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
try {
rs.close();
} catch (NullPointerException e) {
} catch (Exception e) {
rs = null;
}

try {
rs2.close();
} catch (NullPointerException e) {
} catch (Exception e) {
rs2 = null;
}
try {
stm.close();
} catch (NullPointerException e) {

GBase 8a 程序员手册JDBC 篇


- 138 -

南大通用数据技术股份有限公司
} catch (Exception e) {
stm = null;
}
try {
pstm.close();
} catch (NullPointerException e) {
} catch (Exception e) {
pstm = null;
}
try {
conn.close();
} catch (NullPointerException e) {
} catch (Exception e) {
conn = null;
}
}
}
private void createTable(String objectName,



String columnsAndOtherStuff, Statement stmt) throws
SQLException {
createSchemaObject("TABLE", objectName,
columnsAndOtherStuff, stmt);
}
private void createSchemaObject(String objectType, String
objectName,



String columnsAndOtherStuff, Statement stmt) throws
SQLException {
dropSchemaObject(objectType, objectName, stmt);

StringBuffer createSql = new
StringBuffer(objectName.length() + objectType.length() +
columnsAndOtherStuff.length() + 10);
createSql.append("CREATE ");
createSql.append(objectType);
createSql.append(" ");
createSql.append(objectName);

GBase 8a 程序员手册JDBC 篇
南大通用数据技术股份有限公司

- 139 -
createSql.append(" ");
createSql.append(columnsAndOtherStuff);

try {
stmt.executeUpdate(createSql.toString());
} catch (SQLException sqlEx) {
throw sqlEx;
}
}
private void dropSchemaObject(String objectType, String
objectName, Statement stmt)

throws SQLException {
stmt.executeUpdate("DROP " + objectType + " IF EXISTS "


+ objectName);
}
}

创建和管理Consumer Group ................................... 475