<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Thomas,</p>
<p>are you sure you really used --overwrite in the terminal and not
--overwrite-layer ? The latter one is the one you want to use in
this scenario of opening an existing datasource and overwriting
its layer. And in python this will be overwrite_layer=True</p>
<p>Even<br>
</p>
<div class="moz-cite-prefix">Le 22/08/2025 à 19:13, Thomas
Szczurek-Gayant via gdal-dev a écrit :<br>
</div>
<blockquote type="cite"
cite="mid:e1006e5d-7006-439a-9cfb-f3583b6161d4@gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<p>Hi,</p>
<p><br>
</p>
<p>I've a question with the python API of gdal 3.11 new programs
and PostgreSQL driver.</p>
<p><br>
</p>
<p>I can run this in a terminal<br>
</p>
<p><span style="font-family:monospace">gdal vector convert
--overwrite base-cc-evol-struct-pop.csv PG:"dbname='insee'
port=5432 host='localhost' user='thomas' password='xxxxxx'
schemas='wip' tables='rp_population_import'"<br>
<span style="color:#000000;background-color:#ffffff;"> </span><br>
</span> and everything is working fine.</p>
<p>But if I try from the python API with <br>
</p>
<p>gdal.Run("vector", "convert", format="PostgreSQL",
overwrite=True, input="base-cc-evol-struct-pop.csv",
output="dbname='insee' port=5432 host='localhost' user='thomas'
password='xxxxxxxx' schemas='wip'
tables='rp_population_import'")<br>
</p>
<p>Python throw this error as if gdal/postgres actually try to
create a new db:</p>
<p>ERROR 1: PostgreSQL driver doesn't currently support database
creation.<br>
Please create database with the `createdb' command.<br>
ERROR 1: PostgreSQL driver failed to create dbname='insee'
port=5432 host='localhost' user='thomas' password=XXXXXXXXXXXX
schemas='wip' tables='rp_population_import'<br>
Traceback (most recent call last):<br>
File "/home/thomas/repos_git/bd_insee/python/__main__.py",
line 63, in <module><br>
gdal.Run("vector", "convert", format="PostgreSQL",
overwrite=True, input="base-cc-evol-struct-pop.csv",
output="dbname='insee' port=5432 host='localhost' user='thomas'
password='xxxxxx' schemas='wip' tables='rp_population_import'")<br>
~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^<br>
File
"/home/thomas/miniforge3/envs/bd_insee/lib/python3.13/site-packages/osgeo/gdal.py",
line 3353, in Run<br>
raise RuntimeError("Algorithm.Run() failed: %s" %
GetLastErrorMsg())<br>
RuntimeError: Algorithm.Run() failed: PostgreSQL driver failed
to create dbname='insee' port=5432 host='localhost'
user='thomas' password=XXXXXXXXXXXX schemas='wip'
tables='rp_population_import'</p>
<p><br>
</p>
<p>Does anyone have a clue or it's me doing it bad ?</p>
<p>Thanks !<br>
</p>
<br>
<fieldset class="moz-mime-attachment-header"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
gdal-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:gdal-dev@lists.osgeo.org">gdal-dev@lists.osgeo.org</a>
<a class="moz-txt-link-freetext" href="https://lists.osgeo.org/mailman/listinfo/gdal-dev">https://lists.osgeo.org/mailman/listinfo/gdal-dev</a>
</pre>
</blockquote>
<pre class="moz-signature" cols="72">--
<a class="moz-txt-link-freetext" href="http://www.spatialys.com">http://www.spatialys.com</a>
My software is free, but my time generally not.</pre>
</body>
</html>