Форум программистов, компьютерный форум, киберфорум
Java: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
352 / 162 / 20
Регистрация: 22.12.2011
Сообщений: 352

JDBC: PreparedStatement

01.08.2013, 15:52. Показов 1884. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Возник вопрос: в каком месте я имею право ставить знак "?"?
SQL
1
SELECT ? FROM some_table;
SQL
1
SELECT * FROM some_table WHERE ? = 3;
Нельзя ли так использовать?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.08.2013, 15:52
Ответы с готовыми решениями:

Ошибка в jdbc+oracle: java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
Вот такой трабл: на Class.forName('oracle.jdbc.driver.OracleDriver'); отвечает java.lang.ClassNotFoundException:...

PreparedStatement + MySQL
Коллеги, привет! Столкнулся с такой проблемкой. Хочу с помощью PreparedStatement создать схему на MySQL, собственно использую такой...

PreparedStatement не работатет
Доброе время суток. Код public Users getLoginAndPassword(String login) throws SQLException { PreparedStatement...

7
 Аватар для verylazy
462 / 462 / 71
Регистрация: 26.02.2013
Сообщений: 1,263
01.08.2013, 16:28
Проверил, мне выдало
Exception in thread "main" com.microsoft.sqlserver.jdbc.SQLServerEx ception: Must declare the table variable "@P0".

а через конкатенацию строк работает )
0
 Аватар для AckiyBolt
653 / 402 / 35
Регистрация: 19.02.2013
Сообщений: 1,072
Записей в блоге: 2
01.08.2013, 16:43
? -грубо говоря это место в которое будет всунуто значение. такшо шото типа:
Java
1
2
3
SELECT col1, col2
FROM table
WHERE field = ?;
0
352 / 162 / 20
Регистрация: 22.12.2011
Сообщений: 352
01.08.2013, 17:00  [ТС]
AckiyBolt, я понимаю, но вот допустим мне нужно выбрать столбец, название которого я заранее не знаю, как быть тогда?
То есть
SQL
1
SELECT ? FROM (SELECT id, name FROM some_table)
а потом в PS сделать
Java
1
2
String columnName = "id";
somePS.setString(columnName);
Так нельзя?

Добавлено через 6 минут
Видимо нельзя так, выдает
Java
1
"ORA-01747: invalid user.table.column, table.column, or column specification"
Наверное он все столбцы в селекте как-то прекомпилит и, не найдя такой столбец, выдает ошибку при вызове.
0
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
01.08.2013, 20:21
Простое правило:
В качестве параметров не может передаваться никакая метаинформация: имена таблиц, представлений, столбцов, никакие ключевые слова SQL или что либо подобное.
1
352 / 162 / 20
Регистрация: 22.12.2011
Сообщений: 352
02.08.2013, 03:03  [ТС]
turbanoff, спасибо!
Получается только конкатенацией такое возможно проделать?
0
 Аватар для mutagen
2587 / 2260 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
02.08.2013, 12:09
Цитата Сообщение от Sakralbar Посмотреть сообщение
Получается только конкатенацией такое возможно проделать?
проделайте, проделайте - SQL inject будет вашей любимой темой потом )
0
352 / 162 / 20
Регистрация: 22.12.2011
Сообщений: 352
02.08.2013, 14:25  [ТС]
mutagen, ну предложите, как сделать по-другому =)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.08.2013, 14:25
Помогаю со студенческими работами здесь

PostgreSQL autoincrement PreparedStatement
Коллеги кто нибудь работал с PostgreSQL? B MySQL всё просто задаешь колонке параметер AUTO_INCREMENT и всем хорошо в PostgreSQL всё...

Как закрывать connection in PreparedStatement
Народ всем привет есть БД на postgres которое подключается к коду при помощи ConnectionPool C3p0(pooling data) а обработка базы...

Зачем PreparedStatement, если есть Statament + метод + параметр?
Допустим вот Statement + метод + параметр public void isStatementUpdate(String name , String value){ try { ...

Несоответствие символов в бд после переноса данных используя preparedStatement
Здравствуйте. MySQL, Workbench. Текст в Blob - ячейке выглядит следующим образом: "þíþí" (настоящий...

JDBC
Всем привет. Буду рад помощи. prStatement = myconnection.prepareStatement("select * from employees where salary > ? and department =...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru