Как использовать динамическое имя таблицы в запросе SELECT с использованием JDBC
9809 просмотра
1 ответ
У меня есть 5 или таблица таблицы для запроса из \
мой синтаксис мне нравится это
String sql2 = "SELECT * FROM ? WHERE Patient_ID = ?";
pst = conn.prepareStatement(sql2);
System.out.println("SQL before values are set "+sql2);
System.out.println("The values of table/test name recieved in TestPrint stage 1 "+tblName);
System.out.println("The values of test name recieved in TestPrint stage 1 "+key);
// values are outputted correctly but are not getting set in the query
pst.setString(1, tblName);
pst.setLong(2, key);
ResultSet rs2 = pst.executeQuery(sql2);
while(rs2.next()){
String ID = rs2.getString("ID");
jLabel35.setText(ID);
jLabel37.setText(ID);
jLabel38.setText(ID);
// them print command is initiated to print the panel
}
Проблема в том, что когда я запускаю это, я получаю сообщение об ошибке "..... у вас есть ошибка в синтаксисе SQL рядом? WHERE Patient_ID =?"
Когда я вывожу sql используя system.out.println (sql2);
значения не установлены в sql2
Автор: Nawaz Источник Размещён: 12.11.2019 09:54Ответы (1)
6 плюса
Когда вы готовите оператор, база данных создает план выполнения, который она не может выполнить, если таблицы там нет. Другими словами, заполнители могут использоваться только для значений , а не для имен объектов или зарезервированных слов. Вы должны полагаться на Java для создания вашей строки в таком случае:
String sql = "SELECT * FROM `" + tblName + "` WHERE Patient_ID = ?";
pst = conn.prepareStatement(sql);
pst.setLong(1, key);
ResultSet rs = pst.executeQuery(sql);
Автор: Mureinik
Размещён: 09.02.2014 09:01
Вопросы из категории :
- java В чем разница между int и Integer в Java и C #?
- java Как я могу определить IP моего маршрутизатора / шлюза в Java?
- java Каков наилучший способ проверки XML-файла по сравнению с XSD-файлом?
- java Как округлить результат целочисленного деления?
- mysql Двоичные данные в MySQL
- mysql Насколько большой может быть база данных MySQL до того, как производительность начнет снижаться
- mysql Выбрать все столбцы, кроме одного в MySQL?
- mysql MySQL или PDO - каковы плюсы и минусы?
- select Как мне найти записи, которые не объединены?
- select Что "select ((select (s), $ | = 1) [0])" делает в Perl?
- select Лучший способ сделать вложенную логику оператора в SQL Server
- dynamic Поддержка SEO для динамического веб-сайта
- dynamic Есть ли в Perl PHP-подобные динамические переменные?
- dynamic Динамическое предложение WHERE в LINQ
- dynamic Определить размер динамически выделяемой памяти в C
- tablename Как использовать динамическое имя таблицы в запросе SELECT с использованием JDBC
- tablename Синонимы в hyperfilesql и зарезервированное ключевое слово user
- tablename Rails 5: лучший способ переопределить сопоставление имен между моделями и именами таблиц SQL?
- tablename MYSQL - ВЫБРАТЬ данные из динамических имен таблиц