Re: How to implement a dynamic string into a sql statement?

Поиск
Список
Период
Сортировка
От Lussier, Denis
Тема Re: How to implement a dynamic string into a sql statement?
Дата
Msg-id CAHKhnVW++z5zYWowQDb-ev-SJ8TYc-vRamFONnfoCk9K6VorMw@mail.gmail.com
обсуждение исходный текст
Ответ на How to implement a dynamic string into a sql statement?  (howalt <howaltwil@web.de>)
Ответы Re: How to implement a dynamic string into a sql statement?
Список pgsql-jdbc
Don't use prepared statements for DDL.


On Tue, Aug 26, 2014 at 1:24 PM, howalt <howaltwil@web.de> wrote:
Hello Mailinglist! :-)

I have some spatial datasets which are availabe in a opensource metadata catalog software GeoNetwork and in a PostGIS database. The problem is that the student who created the database used different IDs for the same datasets. So the IDs in the GeoNetwork differs from the IDs in the postGIS database. They only have the same name

So, if someone uploads a new dataset into GeoNetwork, the same dataset is uploaded into a postGis database too.

Now I want to add a ID column into the database to give the field the same ID like the ID in geonetwork. I think I can only do this with using the filename cause they are same in both cases.

Now I want to alter the table in eclipse with following code:

Connection con = null;
PreparedStatement ps = null;
final String sqlps = "ALTER TABLE ? ADD COLUMN ?";

String filen = filename.substring(0, filename.indexOf('.'));
                try {
                    con = DriverManager.getConnection("jdbc:postgresql_postGIS://localhost:5433/testdb?user=postgres&password=test");
                    try {
                        ps = con.prepareStatement(sqlps);
                        ps.setString(1, filen);
                        ps.setString(2, "GN_ID");

                        ps.execute();

But this does not work cause I am getting the following Exception:org.postgresql.util.PSQLException: ERROR: syntax error at »$1« Position: 13

So, it seems that PSQL has problems with the ? in the prepared statement. Does anyone know a solution for this problem?

I also tried using normale statement, but this is giving me a findbug error that I try to pass a nonconstant string to an execute method on an sql statement. So I really dont know how to get rid of this problem

Thank you in advance for every help



--
Sent via pgsql-jdbc mailing list (pgsql-jdbc@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-jdbc

В списке pgsql-jdbc по дате отправления:

Предыдущее
От: howalt
Дата:
Сообщение: How to implement a dynamic string into a sql statement?
Следующее
От: David G Johnston
Дата:
Сообщение: Re: How to implement a dynamic string into a sql statement?