Является ли это возможным? Могу ли я указать его в URL-адресе соединения? Как это сделать?
java
database
postgresql
jdbc
database-schema
marcosbeirigo
источник
источник
setSchema
метод JDCB после создания подключения. У меня работает с последним драйвером postgres.postgresql-9.4.1209.jdbc42.jar
работали вместе с9.5
базой данных и?currentSchema=myschema
синтаксисом.Начиная с версии 9.4 , вы можете использовать
currentSchema
параметр в строке подключения.Например:
источник
Если это возможно в вашей среде, вы также можете установить схему по умолчанию для пользователя в соответствии с желаемой схемой:
источник
Я не верю, что есть способ указать схему в строке подключения. Похоже, вы должны выполнить
после установления соединения указать схему.
источник
Statement statement = connection.createStatement(); try { statement.execute("set search_path to '" + schema + "'"); } finally { statement.close(); }
Я представил обновленную версию патча в драйвер PostgreSQL JDBC, чтобы включить это несколько лет назад. Вам нужно собрать драйвер PostreSQL JDBC из исходного кода (после добавления в патч), чтобы использовать его:
http://archives.postgresql.org/pgsql-jdbc/2008-07/msg00012.php
http://jdbc.postgresql.org/
источник
DataSource
-setCurrentSchema
При создании
DataSource
реализации ищите метод для установки текущей схемы / схемы по умолчанию.Например, по
PGSimpleDataSource
вызову классаsetCurrentSchema
.Если вы оставите схему без указания, Postgres по умолчанию будет использовать схему, названную
public
в базе данных. См. Руководство, раздел 5.9.2 Общедоступная схема . Чтобы процитировать шляпу руководство:источник
search_path
Не забывайте,
SET SCHEMA 'myschema'
что вы можете использовать в отдельном заявленииНачиная с версии 9.4 и, возможно, более ранних версий в драйвере JDBC, существует поддержка
setSchema(String schemaName)
метода.источник
В Go с "sql.DB" (обратите внимание на
search_path
подчеркивание):источник
На это уже ответили:
JDBC: PostgreSQL: // локальный: 5432 / MyDatabase CurrentSchema = MySchema
Как и в предыдущих ответах, приведенная выше строка подключения просто работает.
Я проверил, и все в порядке: https://youtu.be/m0lBUHSLkNM?t=79
(Хотя принятый ответ был дан 8 лет назад, он был отредактирован 1 год назад ...)
источник