📄 jtdsresultset.java
字号:
public void updateObject(int columnIndex, Object x, int scale) throws SQLException {
checkOpen();
if (scale < 0 || scale > getConnection().getMaxPrecision()) {
throw new SQLException(Messages.get("error.generic.badscale"), "HY092");
}
if (x instanceof BigDecimal) {
updateObject(columnIndex, ((BigDecimal) x).setScale(scale, BigDecimal.ROUND_HALF_UP));
} else if (x instanceof Number) {
synchronized (f) {
f.setGroupingUsed(false);
f.setMaximumFractionDigits(scale);
updateObject(columnIndex, f.format(x));
}
} else {
updateObject(columnIndex, x);
}
}
public String getCursorName() throws SQLException {
checkOpen();
if (cursorName != null) {
return this.cursorName;
}
throw new SQLException(Messages.get("error.resultset.noposupdate"), "24000");
}
public String getString(int columnIndex) throws SQLException {
Object tmp = getColumn(columnIndex);
if (tmp instanceof String) {
return (String) tmp;
}
return (String) Support.convert(this, tmp, java.sql.Types.VARCHAR, getConnection().getCharset());
}
public void updateString(int columnIndex, String x) throws SQLException {
setColValue(columnIndex, Types.VARCHAR, x , (x != null)? x.length(): 0);
}
public byte getByte(String columnName) throws SQLException {
return getByte(findColumn(columnName));
}
public double getDouble(String columnName) throws SQLException {
return getDouble(findColumn(columnName));
}
public float getFloat(String columnName) throws SQLException {
return getFloat(findColumn(columnName));
}
public int findColumn(String columnName) throws SQLException {
checkOpen();
if (columnMap == null) {
columnMap = new HashMap(columnCount);
} else {
Object pos = columnMap.get(columnName);
if (pos != null) {
return ((Integer) pos).intValue();
}
}
// Rather than use toUpperCase()/toLowerCase(), which are costly,
// just do a sequential search. It's actually faster in most cases.
for (int i = 0; i < columnCount; i++) {
if (columns[i].name.equalsIgnoreCase(columnName)) {
columnMap.put(columnName, new Integer(i + 1));
return i + 1;
}
}
throw new SQLException(Messages.get("error.resultset.colname", columnName), "07009");
}
public int getInt(String columnName) throws SQLException {
return getInt(findColumn(columnName));
}
public long getLong(String columnName) throws SQLException {
return getLong(findColumn(columnName));
}
public short getShort(String columnName) throws SQLException {
return getShort(findColumn(columnName));
}
public void updateNull(String columnName) throws SQLException {
updateNull(findColumn(columnName));
}
public boolean getBoolean(String columnName) throws SQLException {
return getBoolean(findColumn(columnName));
}
public byte[] getBytes(String columnName) throws SQLException {
return getBytes(findColumn(columnName));
}
public void updateByte(String columnName, byte x) throws SQLException {
updateByte(findColumn(columnName), x);
}
public void updateDouble(String columnName, double x) throws SQLException {
updateDouble(findColumn(columnName), x);
}
public void updateFloat(String columnName, float x) throws SQLException {
updateFloat(findColumn(columnName), x);
}
public void updateInt(String columnName, int x) throws SQLException {
updateInt(findColumn(columnName), x);
}
public void updateLong(String columnName, long x) throws SQLException {
updateLong(findColumn(columnName), x);
}
public void updateShort(String columnName, short x) throws SQLException {
updateShort(findColumn(columnName), x);
}
public void updateBoolean(String columnName, boolean x) throws SQLException {
updateBoolean(findColumn(columnName), x);
}
public void updateBytes(String columnName, byte[] x) throws SQLException {
updateBytes(findColumn(columnName), x);
}
public BigDecimal getBigDecimal(int columnIndex) throws SQLException {
return (BigDecimal) Support.convert(this, getColumn(columnIndex), java.sql.Types.DECIMAL, null);
}
public BigDecimal getBigDecimal(int columnIndex, int scale) throws SQLException {
BigDecimal result = (BigDecimal) Support.convert(this, getColumn(columnIndex), java.sql.Types.DECIMAL, null);
if (result == null) {
return null;
}
return result.setScale(scale, BigDecimal.ROUND_HALF_UP);
}
public void updateBigDecimal(int columnIndex, BigDecimal x)
throws SQLException {
checkOpen();
checkUpdateable();
if (x != null) {
int prec = getConnection().getMaxPrecision();
x = Support.normalizeBigDecimal(x, prec);
}
setColValue(columnIndex, Types.DECIMAL, x, 0);
}
public URL getURL(int columnIndex) throws SQLException {
String url = getString(columnIndex);
try {
return new java.net.URL(url);
} catch (MalformedURLException e) {
throw new SQLException(Messages.get("error.resultset.badurl", url), "22000");
}
}
public Array getArray(int columnIndex) throws SQLException {
checkOpen();
notImplemented("ResultSet.getArray()");
return null;
}
public void updateArray(int columnIndex, Array x) throws SQLException {
checkOpen();
checkUpdateable();
notImplemented("ResultSet.updateArray()");
}
public Blob getBlob(int columnIndex) throws SQLException {
return (Blob) Support.convert(this, getColumn(columnIndex), java.sql.Types.BLOB, null);
}
public void updateBlob(int columnIndex, Blob x) throws SQLException {
if (x == null) {
updateBinaryStream(columnIndex, null, 0);
} else {
updateBinaryStream(columnIndex, x.getBinaryStream(), (int) x.length());
}
}
public Clob getClob(int columnIndex) throws SQLException {
return (Clob) Support.convert(this, getColumn(columnIndex), java.sql.Types.CLOB, null);
}
public void updateClob(int columnIndex, Clob x) throws SQLException {
if (x == null) {
updateCharacterStream(columnIndex, null, 0);
} else {
updateCharacterStream(columnIndex, x.getCharacterStream(), (int) x.length());
}
}
public Date getDate(int columnIndex) throws SQLException {
return (java.sql.Date)Support.convert(this, getColumn(columnIndex), java.sql.Types.DATE, null);
}
public void updateDate(int columnIndex, Date x) throws SQLException {
setColValue(columnIndex, Types.DATE, x, 0);
}
public Ref getRef(int columnIndex) throws SQLException {
checkOpen();
notImplemented("ResultSet.getRef()");
return null;
}
public void updateRef(int columnIndex, Ref x) throws SQLException {
checkOpen();
checkUpdateable();
notImplemented("ResultSet.updateRef()");
}
public ResultSetMetaData getMetaData() throws SQLException {
checkOpen();
// If this is a DatabaseMetaData built result set, avoid getting an
// exception because the statement is closed and assume no LOBs
boolean useLOBs = this instanceof CachedResultSet && statement.closed
? false
: getConnection().getUseLOBs();
return new JtdsResultSetMetaData(this.columns, this.columnCount,
useLOBs);
}
public SQLWarning getWarnings() throws SQLException {
checkOpen();
return statement.getWarnings();
}
public Statement getStatement() throws SQLException {
checkOpen();
return this.statement;
}
public Time getTime(int columnIndex) throws SQLException {
return (java.sql.Time) Support.convert(this, getColumn(columnIndex), java.sql.Types.TIME, null);
}
public void updateTime(int columnIndex, Time x) throws SQLException {
setColValue(columnIndex, Types.TIME, x, 0);
}
public Timestamp getTimestamp(int columnIndex) throws SQLException {
return (Timestamp) Support.convert(this, getColumn(columnIndex), java.sql.Types.TIMESTAMP, null);
}
public void updateTimestamp(int columnIndex, Timestamp x) throws SQLException {
setColValue(columnIndex, Types.TIMESTAMP, x, 0);
}
public InputStream getAsciiStream(String columnName) throws SQLException {
return getAsciiStream(findColumn(columnName));
}
public InputStream getBinaryStream(String columnName) throws SQLException {
return getBinaryStream(findColumn(columnName));
}
public InputStream getUnicodeStream(String columnName) throws SQLException {
return getUnicodeStream(findColumn(columnName));
}
public void updateAsciiStream(String columnName, InputStream x, int length)
throws SQLException {
updateAsciiStream(findColumn(columnName), x, length);
}
public void updateBinaryStream(String columnName, InputStream x, int length)
throws SQLException {
updateBinaryStream(findColumn(columnName), x, length);
}
public Reader getCharacterStream(String columnName) throws SQLException {
return getCharacterStream(findColumn(columnName));
}
public void updateCharacterStream(String columnName, Reader x, int length)
throws SQLException {
updateCharacterStream(findColumn(columnName), x, length);
}
public Object getObject(String columnName) throws SQLException {
return getObject(findColumn(columnName));
}
public void updateObject(String columnName, Object x) throws SQLException {
updateObject(findColumn(columnName), x);
}
public void updateObject(String columnName, Object x, int scale)
throws SQLException {
updateObject(findColumn(columnName), x, scale);
}
public Object getObject(int columnIndex, Map map) throws SQLException {
notImplemented("ResultSet.getObject(int, Map)");
return null;
}
public String getString(String columnName) throws SQLException {
return getString(findColumn(columnName));
}
public void updateString(String columnName, String x) throws SQLException {
updateString(findColumn(columnName), x);
}
public BigDecimal getBigDecimal(String columnName) throws SQLException {
return getBigDecimal(findColumn(columnName));
}
public BigDecimal getBigDecimal(String columnName, int scale)
throws SQLException {
return getBigDecimal(findColumn(columnName), scale);
}
public void updateBigDecimal(String columnName, BigDecimal x)
throws SQLException {
updateObject(findColumn(columnName), x);
}
public URL getURL(String columnName) throws SQLException {
return getURL(findColumn(columnName));
}
public Array getArray(String columnName) throws SQLException {
return getArray(findColumn(columnName));
}
public void updateArray(String columnName, Array x) throws SQLException {
updateArray(findColumn(columnName), x);
}
public Blob getBlob(String columnName) throws SQLException {
return getBlob(findColumn(columnName));
}
public void updateBlob(String columnName, Blob x) throws SQLException {
updateBlob(findColumn(columnName), x);
}
public Clob getClob(String columnName) throws SQLException {
return getClob(findColumn(columnName));
}
public void updateClob(String columnName, Clob x) throws SQLException {
updateClob(findColumn(columnName), x);
}
public Date getDate(String columnName) throws SQLException {
return getDate(findColumn(columnName));
}
public void updateDate(String columnName, Date x) throws SQLException {
updateDate(findColumn(columnName), x);
}
public Date getDate(int columnIndex, Calendar cal) throws SQLException {
java.sql.Date date = getDate(columnIndex);
if (date != null && cal != null) {
date = new java.sql.Date(Support.timeToZone(date, cal));
}
return date;
}
public Ref getRef(String columnName) throws SQLException {
return getRef(findColumn(columnName));
}
public void updateRef(String columnName, Ref x) throws SQLException {
updateRef(findColumn(columnName), x);
}
public Time getTime(String columnName) throws SQLException {
return getTime(findColumn(columnName));
}
public void updateTime(String columnName, Time x) throws SQLException {
updateTime(findColumn(columnName), x);
}
public Time getTime(int columnIndex, Calendar cal) throws SQLException {
checkOpen();
java.sql.Time time = getTime(columnIndex);
if (time != null && cal != null) {
return new Time(Support.timeToZone(time, cal));
}
return time;
}
public Timestamp getTimestamp(String columnName) throws SQLException {
return getTimestamp(findColumn(columnName));
}
public void updateTimestamp(String columnName, Timestamp x)
throws SQLException {
updateTimestamp(findColumn(columnName), x);
}
public Timestamp getTimestamp(int columnIndex, Calendar cal)
throws SQLException {
checkOpen();
Timestamp timestamp = getTimestamp(columnIndex);
if (timestamp != null && cal != null) {
timestamp = new Timestamp(Support.timeToZone(timestamp, cal));
}
return timestamp;
}
public Object getObject(String columnName, Map map) throws SQLException {
return getObject(findColumn(columnName), map);
}
public Date getDate(String columnName, Calendar cal) throws SQLException {
return getDate(findColumn(columnName), cal);
}
public Time getTime(String columnName, Calendar cal) throws SQLException {
return getTime(findColumn(columnName), cal);
}
public Timestamp getTimestamp(String columnName, Calendar cal)
throws SQLException {
return getTimestamp(findColumn(columnName), cal);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -