У меня есть список Python newcol
, который я хочу добавить в существующую таблицу Postgresql. Я использовал следующий код:Как добавить новый столбец (список Python) в таблицу Postgresql?
conn = psycopg2.connect(host='***', database='***', user='***', password='***')
cur = conn.cursor()
cur.execute('ALTER TABLE %s ADD COLUMN %s text' % ('mytable', 'newcol'))
conn.commit()
Это добавило список newcol
к моему столу, однако новый столбец не имеет значения в нем. В python, когда я печатаю список в python, это заполненный список.
Кроме того, количество строк в таблице и в списке, который я хочу добавить, одинаковы. Я немного запутался.
Заранее благодарим за помощь.
'ALTER TABLE ... ADD COLUMN ...' не добавляет значения из списка - это только добавить/создать (пустой) столбец. Чтобы добавить значения в этот столбец, вам нужно «ОБНОВИТЬ» - изучить SQL. – furas
@furas, woops, немного запутался, когда потянул его в Python. В SQL я вручную добавлял каждую строку в прошлом. Есть ли способ обновить значения и добавить весь список? – dtluther
Вы можете использовать цикл 'for', чтобы получить элемент из списка и выполнить запрос' UPDATE'. – furas