⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 picodbapi.java

📁 picoSQL is a SQL-based, multi-user, client/server RDBMS, released under the GPL
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
   public int SQLNumParams(OdbcStatement HSTMT)      throws SQLException, PicoSQLWarning   {      int hStmt = HSTMT.getHSTMT();      int numPar = 0;      if(DriverManager.getLogWriter() != null)         DriverManager.println("(SQLNumParams), hStmt=" + hStmt);      ShortHolder numParHolder = new ShortHolder();      server.SQLNumResultCols(returnCodeHolder, hStmt, numParHolder);      if (returnCodeHolder.value != OdbcDef.SQL_SUCCESS)         standardError (returnCodeHolder.value, 0, 0, hStmt);      if(DriverManager.getLogWriter() != null)         DriverManager.println("value=" + numParHolder.value);      return numParHolder.value;   }   public int SQLNumResultCols(OdbcStatement HSTMT) throws SQLException, PicoSQLWarning {      int hStmt = HSTMT.getHSTMT();      if(DriverManager.getLogWriter() != null)         DriverManager.println("(SQLNumResultCols), hStmt=" + hStmt);      ShortHolder pccol = new ShortHolder();      server.SQLNumResultCols(returnCodeHolder, hStmt, pccol);      if (returnCodeHolder.value != OdbcDef.SQL_SUCCESS)         standardError (returnCodeHolder.value, 0, 0, hStmt);      if(DriverManager.getLogWriter() != null)         DriverManager.println("value=" + pccol.value);      return pccol.value;   }   public void SQLPrepare(OdbcStatement HSTMT, String szSqlStr)      throws SQLException, SQLWarning {      int hStmt = HSTMT.getHSTMT();      if(DriverManager.getLogWriter() != null)         DriverManager.println("(SQLPrepare), hStmt=" + hStmt + ", szSqlStr=" + szSqlStr);      server.SQLPrepare (returnCodeHolder, hStmt, szSqlStr, szSqlStr.length());      if (returnCodeHolder.value != OdbcDef.SQL_SUCCESS)         standardError (returnCodeHolder.value, 0, 0, hStmt);   }   public int SQLRowCount(OdbcStatement HSTMT) throws SQLException, PicoSQLWarning {      int hStmt = HSTMT.getHSTMT();      if(DriverManager.getLogWriter() != null)         DriverManager.println("(SQLRowCount), hStmt=" + hStmt);         IntHolder pcrow = new IntHolder();         server.SQLRowCount(returnCodeHolder, hStmt, pcrow);      if(DriverManager.getLogWriter() != null)         DriverManager.println("value=" + pcrow.value);      return pcrow.value;   }   public void SQLSetConnectOption(OdbcConnection HDBC, short fOption, int vParam)      throws SQLException {      int hDbc = HDBC.getHDBC();      if(DriverManager.getLogWriter() != null)         DriverManager.println("(SQLSetConnectOption), hDbc=" + hDbc + ", fOption=" + fOption + ", vParam=" + vParam);      server.SQLSetConnectOption(returnCodeHolder, hDbc, fOption, "", vParam);      if (returnCodeHolder.value != OdbcDef.SQL_SUCCESS)         standardError (returnCodeHolder.value, 0, hDbc, 0);   }   public void SQLSetConnectOption(OdbcConnection HDBC, short fOption, String vParam)      throws SQLException {      int hDbc = HDBC.getHDBC();      if(DriverManager.getLogWriter() != null)         DriverManager.println("(SQLSetConnectOption), hDbc=" + hDbc + ", fOption=" + fOption + ", vParam=" + vParam);      server.SQLSetConnectOption(returnCodeHolder, hDbc, fOption, vParam, 0);      if (returnCodeHolder.value != OdbcDef.SQL_SUCCESS)         standardError (returnCodeHolder.value, 0, hDbc, 0);   }   public void SQLSetStmtOption(OdbcStatement HSTMT, short fOption, int vParam)      throws SQLException   {      int hStmt = HSTMT.getHSTMT();      if(DriverManager.getLogWriter() != null)         DriverManager.println("(SQLSetStmtOption), hStmt=" + hStmt + ", fOption=" + fOption + ", vParam=" + vParam);      server.SQLSetStmtOption(returnCodeHolder, hStmt, fOption, "", vParam);      if (returnCodeHolder.value != OdbcDef.SQL_SUCCESS)         standardError (returnCodeHolder.value, 0, 0, hStmt);   }   public void SQLSpecialColumns(OdbcStatement HSTMT, short fColType, String catalog, String schema, String table, int fScope, boolean fNullable)      throws SQLException, SQLWarning   {      int hStmt = HSTMT.getHSTMT();      if(DriverManager.getLogWriter() != null)         DriverManager.println("(SQLSpecialColumns), hStmt=" + hStmt + ", fColType=" + fColType + ",catalog=" + catalog + ", schema=" + schema + ", table=" + table + ", fScope=" + fScope + ", fNullable=" + fNullable);      server.SQLSpecialColumns(         returnCodeHolder,         hStmt,         fColType,         catalog == null ? "" : catalog,         catalog == null ? OdbcDef.SQL_NULL_DATA : SQL_NTS,         schema == null ? "" : schema,         schema == null ? OdbcDef.SQL_NULL_DATA : SQL_NTS,         table == null ? "%" : table,         table == null ? OdbcDef.SQL_NULL_DATA : SQL_NTS,         (short)fScope,         (short)(fNullable ? OdbcDef.SQL_NULLABLE : OdbcDef.SQL_NO_NULLS)      );      if (returnCodeHolder.value != OdbcDef.SQL_SUCCESS)         standardError (returnCodeHolder.value, 0, 0, hStmt);   }   public void SQLStatistics(OdbcStatement HSTMT, String catalog, String schema, String table, boolean unique, boolean approximate)      throws SQLException, SQLWarning   {      int hStmt = HSTMT.getHSTMT();      if(DriverManager.getLogWriter() != null)         DriverManager.println("(SQLStatistics), hStmt=" + hStmt + ",catalog=" + catalog + ", schema=" + schema + ", table=" + table + ", unique=" + unique + ", approximate=" + approximate);      server.SQLStatistics(         returnCodeHolder,         hStmt,         catalog == null ? "" : catalog,         catalog == null ? OdbcDef.SQL_NULL_DATA : SQL_NTS,         schema == null ? "" : schema,         schema == null ? OdbcDef.SQL_NULL_DATA : SQL_NTS,         table == null ? "%" : table,         table == null ? OdbcDef.SQL_NULL_DATA : SQL_NTS,         (short)(unique ? OdbcDef.SQL_INDEX_UNIQUE : OdbcDef.SQL_INDEX_ALL),         (short)(approximate ? OdbcDef.SQL_QUICK : OdbcDef.SQL_ENSURE)      );      if (returnCodeHolder.value != OdbcDef.SQL_SUCCESS)         standardError (returnCodeHolder.value, 0, 0, hStmt);   }   public void SQLTables(OdbcStatement HSTMT, String catalog, String schema, String table, String types)      throws SQLException, SQLWarning   {      int hStmt = HSTMT.getHSTMT();      if(DriverManager.getLogWriter() != null)         DriverManager.println("(SQLTables), hStmt=" + hStmt + ",catalog=" + catalog + ", schema=" + schema + ", table=" + table + ", types=" + types);            server.SQLTables(         returnCodeHolder,         hStmt,         catalog == null ? "" : catalog,         catalog == null ? OdbcDef.SQL_NULL_DATA : SQL_NTS,         schema == null ? "" : schema,         schema == null ? OdbcDef.SQL_NULL_DATA : SQL_NTS,         table == null ? "%" : table,         table == null ? OdbcDef.SQL_NULL_DATA : SQL_NTS,         types == null ? "" : types,         types == null ? OdbcDef.SQL_NULL_DATA : SQL_NTS      );      if (returnCodeHolder.value != OdbcDef.SQL_SUCCESS)         standardError (returnCodeHolder.value, 0, 0, hStmt);   }   public void SQLTransact(int hEnv, OdbcConnection HDBC, short fType)      throws SQLException   {      int hDbc = HDBC.getHDBC();      if(DriverManager.getLogWriter() != null)         DriverManager.println("(SQLTransact), hEnv=" + hEnv + ", hDbc=" + hDbc + ", fType=" + fType);      server.SQLTransact(returnCodeHolder, hEnv, hDbc, fType);      if (returnCodeHolder.value != OdbcDef.SQL_SUCCESS)         standardError (returnCodeHolder.value, hEnv, hDbc, 0);   }   public int SQLError(int hEnv, int hDbc, int hStmt) {      int Return;      StringHolder outSqlState = new StringHolder();      StringHolder outErrorMsg = new StringHolder();      IntHolder outNativeError = new IntHolder();      ShortHolder pcbErrorMsg = new ShortHolder();      server.SQLError(returnCodeHolder, hEnv, hDbc, hStmt, outSqlState,                      outNativeError, outErrorMsg, (short)512, pcbErrorMsg);      if (returnCodeHolder.value == OdbcDef.SQL_NO_DATA_FOUND) {         sqlState = "";         sqlErrMess = "";         Return = 0;      } else if (returnCodeHolder.value == OdbcDef.SQL_ERROR) {         sqlState = "S10000";         sqlErrMess = "General Error - Error on SQLError";         Return = 0;      } else {         sqlState = outSqlState.value;         sqlErrMess = outErrorMsg.value;         Return = (outNativeError.value == 0) ? 9999 : outNativeError.value;      }      if(DriverManager.getLogWriter() != null)         DriverManager.println("(SQLError), hEnv=" + hEnv +                               ", hDbc=" + hDbc + ", hStmt=" + hStmt +                                " [" + sqlErrMess + "]=" + Return);      return Return;   }   public static SQLWarning convertWarning(PicoSQLWarning warn) {      SQLWarning Return = warn;      if(warn.getSQLState().equals("01004")) {         Return = new DataTruncation(-1, false, true, 0, 0);      }      return Return;   }   SQLException createSQLException(int hEnv, int hDbc, int hStmt) {      int error;      SQLException Return = null, currEx = null, lastEx = null;      if (DriverManager.getLogWriter() != null)         DriverManager.println("ERROR - Generating SQLException...");      while((error = SQLError (hEnv, hDbc, hStmt)) != 0) {         currEx = new SQLException(sqlErrMess, sqlState, error);         if (Return == null)            Return = currEx;         else            lastEx.setNextException(currEx);         lastEx = currEx;      }      if (Return == null) {         Return = new PicoSQLWarning("General Error", "S1000");      }      return Return;   }   PicoSQLWarning createSQLWarning(int hEnv, int hDbc, int hStmt) {      int error;      PicoSQLWarning Return = null, currEx = null, lastEx = null;      if(DriverManager.getLogWriter() != null)         DriverManager.println("WARNING - Generating SQLWarning...");      while((error = SQLError (hEnv, hDbc, hStmt)) != 0) {         currEx = new PicoSQLWarning(sqlErrMess, sqlState, error);         if (Return == null)            Return = currEx;         else            lastEx.setNextWarning(currEx);         lastEx = currEx;      }      if (Return == null) {         Return = new PicoSQLWarning("General warning", "01000");      }      return Return;   }   void standardError(int retCode, int hEnv, int hDbc, int hStmt)      throws SQLException, PicoSQLWarning {      if(DriverManager.getLogWriter() != null)         DriverManager.println("RETCODE = " + retCode);      switch(retCode) {      case OdbcDef.SQL_SUCCESS:          return;      case OdbcDef.SQL_ERROR:          throw createSQLException(hEnv, hDbc, hStmt);      case OdbcDef.SQL_SUCCESS_WITH_INFO:         throw createSQLWarning(hEnv, hDbc, hStmt);      case OdbcDef.SQL_INVALID_HANDLE:          throw new SQLException("Invalid handle");      case OdbcDef.SQL_NO_DATA_FOUND:         throw new SQLException("No data found");      }      throwGenericSQLException(retCode);   }   void throwGenericSQLException(int code) throws SQLException {      String reason = "Unknown return code " + code;      String sqlstate = "S1000";      if(DriverManager.getLogWriter() != null)         DriverManager.println("ERROR - " + sqlstate + " " + reason);      throw new SQLException(reason, sqlstate);   }   protected void ReleaseStoredBytes(int i, int j){}   protected void ReleaseStoredChars(int i, int j){}   public int bufferToInt(byte abyte0[]){return 0;}      static private String fractToString (int fract) {      String Return = "000" + fract;      return Return.substring(Return.length() - 3);   }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -