Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / проблема с PreparedStatement.setTimestamp() [Microsoft JDBC for mssql 2000] / 5 сообщений из 5, страница 1 из 1
19.11.2002, 15:06:37
    #32069687
noir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с PreparedStatement.setTimestamp() [Microsoft JDBC for mssql 2000]
При попытке добавить Timestamp в колонку типа datetime все врмя получаю синтаксическую ошибку, причем судя по ее виду, все дело в том, что вместо значения таймштампа подставляется отладочная информация о каком-то классе (Syntax error near p@56).

Пробовал setString(timestamp.toString());, результат, как ни странно, такой: при выводе на консоль timestamp.toString() выглядит нормально, но в стейтменте он все равно "в Канаде, ловит рыбу", причем строчка после near НЕ МЕНЯЕТЬСЯ (хотя, по логике должно было стать g@...)

Вопрос: так как же добавить этот [skipped] Timestamp в базу?
...
Рейтинг: 0 / 0
19.11.2002, 15:22:20
    #32069701
jimmers
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с PreparedStatement.setTimestamp() [Microsoft JDBC for mssql 2000]
Если не трудно, код класса...
...
Рейтинг: 0 / 0
19.11.2002, 15:28:42
    #32069707
noir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с PreparedStatement.setTimestamp() [Microsoft JDBC for mssql 2000]
public static void writeFunction(Connection c,
String fname,
String params,
String caller,
int channel,
int errorCode,
java.util.Date date)
throws SQLException{
PreparedStatement s=null;
try{
s=c.prepareStatement("INSERT INTO TransactionHistory"+
// 1 2 3 4 5 6
"(FunctionName,FunctionParams,FunctionCaller,ChannelID,ErrorCode,AccessDate)"+
" VALUES(?\n,?\n,?\n,?\n,?\n,?");
s.setString(1,fname);
s.setString(2,params);

s.setString(3,caller);

s.setInt(4,channel);
s.setInt(5,errorCode);
s.setTimestamp(6, new java.sql.Timestamp(date.getTime()));
s.executeUpdate();
}//try
finally{
try{
s.close();
}
catch(Exception ex){}
}//finally
}//writeFunction
...
Рейтинг: 0 / 0
20.11.2002, 01:11:12
    #32069885
jimmers
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с PreparedStatement.setTimestamp() [Microsoft JDBC for mssql 2000]
Видимо, тут:

VALUES(?\n,?\n,?\n,?\n,?\n,? ) ");

Кстати, замечу, что timestamp тут вовсе не timestamp, а datetime, как Вы понимаете…
...
Рейтинг: 0 / 0
20.11.2002, 12:13:50
    #32070041
noir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
проблема с PreparedStatement.setTimestamp() [Microsoft JDBC for mssql 2000]
Ураа!!!

Спасиба. А то б застрелился :)) А вообще, давненько не видел столь жутких сообщений об ощибках из-за такой ерунды.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / проблема с PreparedStatement.setTimestamp() [Microsoft JDBC for mssql 2000] / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]