Как с помощью Python добавить инкрементируемый объект в MySQL?

162
20 января 2022, 06:30

подскажите, пожалуйста: Есть таблица

CREATE TABLE post(id int AUTO_INCREMENT, 
                  term VARCHAR(1000) NOT NULL, 
                  term1 VARCHAR(1000) NOT NULL, 
                  PRIMARY KEY (id));

Как с помощью Python добавить элемент в столбец term который будет образовываться по маске url.ru/p=(значение из столбца id) ?

import pymysql
conn = pymysql.connect(host='localhost',
                    user='root',
                    passwd='1234',
                    db='db')
cur = conn.cursor()
cur.execute('INSERT INTO post(term, term1) VALUES ("??????", "Текст для 3 
столбца")')
cur.close()
conn.close()

То есть первая добавленная строка будет выглядеть так: id = 1, term = url.ru/p=1, term1 = Текст для 3 столбца

Может быть можно использовать cur.execute("UPDATE post SET term1='url.ru/p='")? Только как-то после нее нужно вставить id у текущей строки

Answer 1

ID последней вставленной записи получите так: id = cur.lastrowid.

Но, если вы хотите сохранить недетерминированный результат, то как минимум нужно поле со штампом времени получения этого результата.

Если это не так, то полностью согласен с комментаторами, хранить в таблице данные, которые могут быть посчитаны из других данных, то есть детерминированный результат, не нужно. Удалите поле term1.

READ ALSO
Пауза между скриптами Js

Пауза между скриптами Js

есть 3 скрипта асинхронных, и каждый ждет другого, но выполняется он 1 минуту, и потом ничего не происходит, что и как поправитьЯ использую...

90
Vue - показать/скрыть элемент, генерируемый v-for

Vue - показать/скрыть элемент, генерируемый v-for

Какой самый лучший в VUE способ изменять видимость div в элементе li, который генерируется v-for ? Проблема в том, что приходят на ум какие то уж очень...

156
Задача codeWars. Различия решений задачи JavaScript

Задача codeWars. Различия решений задачи JavaScript

Возникла проблема в решении задачи из codeWarsСперва условие:

199
Как подсчитать сумму в массиве?

Как подсчитать сумму в массиве?

Как подсчитать сумму cmon в массивах? Надо получить сумму массива red и black

210