powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / nativeSQL(String sql)
11 сообщений из 11, страница 1 из 1
nativeSQL(String sql)
    #33259641
User9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У интерфейса коннектион есть метод нативеСКУЭЛЬ( Стринг скуэль).
Вопрос где можно найти синтаксис джававского независимого от бд эскуэля - ну например как альясы писать - через пробел или через ас.... и тд
...
Рейтинг: 0 / 0
nativeSQL(String sql)
    #33259702
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
java'вского скуля нет... весь скуль СУБД-зависим и совместим только на уровне поддержки стандартов от Ansi
...
Рейтинг: 0 / 0
nativeSQL(String sql)
    #33259709
User9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а зачем тогда натив скуль
...
Рейтинг: 0 / 0
nativeSQL(String sql)
    #33259714
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это драйвер-specific фича.
ты драйверу - ansi-запрос, он тебе (может) возвратить нативную строку, специфичную для данной субд.
...
Рейтинг: 0 / 0
nativeSQL(String sql)
    #33259721
User9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А есть ли классы кот преобразуют стандарт sql в спейифичный
например перед альясом ставят AS или пробел в зависимости от заданной СУБД
...
Рейтинг: 0 / 0
nativeSQL(String sql)
    #33259734
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пишите на Ansi SQL и многие СУБД будут выполнять запрос правильно

например перед альясом ставят AS или пробел в зависимости от заданной СУБД
например, AS они все будут поддерживать и так
...
Рейтинг: 0 / 0
nativeSQL(String sql)
    #33259735
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пример для оракла.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
 import  java.sql.Connection;
 import  java.sql.DriverManager;

 public   class  testNativeSQL
{
	 public   static   void  main(String[] args)  throws  Exception
	{
		 Class .forName("oracle.jdbc.driver.OracleDriver");
		Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@host:port:db",												  "user", "pass");
		String sql = "{call init_collection}";
		System.out.println(conn.nativeSQL(sql));
		conn.close();
	}
}

Вывод:
Код: plaintext
BEGIN init_collection; END;
...
Рейтинг: 0 / 0
nativeSQL(String sql)
    #33260384
User9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Огромное спасибо!
А может ссылочки по синтаксису АНСИ СКУЛЬ у кого нить есть?
...
Рейтинг: 0 / 0
nativeSQL(String sql)
    #33260433
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гугл поможет :)
Только объясни, зачем тебе стандартный SQL? Ни одна бд, насколько я знаю, не поддерживает его на 100%...
...
Рейтинг: 0 / 0
nativeSQL(String sql)
    #33260458
User9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Понимаю ! но мне от СКУЭЛЬ много не надо - селекты, втьюхи и сиквенсы!
вот только синтекс немного разный - хочется универсальности! например как аутер джоины синтаксически выглядят!!!!
...
Рейтинг: 0 / 0
nativeSQL(String sql)
    #33262144
Зашедший
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Предлагаю вариант - написать свой интерпретатор, который будет конвертить собственный формат SQL (на основе ANSI + некоторые специфические конструкции типа сиквенсов и т.п. - ибо, например, в Интербейсе не поддерживались сиквенсы, там генераторы юзать надо...), а потом в зависимости от типа базы подставлять соответствующие нэйтив-конструкции. Не в одном месте работы такое наблюдал, кстати.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / nativeSQL(String sql)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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