Предмет: Информатика,
автор: behovoleg
вот мой код, всё работает норм
нужна помощь с написание последнего пункта
Создать 2 таблицы в Базе Данных
Одна будет хранить текстовые данные(1 колонка)
Другая числовые(1 колонка)
Есть список, состоящий из чисел и слов.
Если элемент списка слово, записать его в соответствующую таблицу, затем посчитать длину слова и записать её в числовую таблицу
Если элемент списка число: проверить, если число чётное записать его в таблицу чисел, если нечётное, то записать во вторую таблицу слово: «нечётное»
Если число записей во второй таблице больше 5, то удалить 1 запись в первой таблице. Если меньше, то обновить 1 запись в первой таблице на «hello»
import sqlite3
import random
conn = sqlite3.connect('dz_3.db')
cursor = conn.cursor()
cursor.execute('''CREATE TABLE IF NOT EXISTS tab_1(id INTEGER PRIMARY KEY AUTOINCREMENT, col_1 TEXT)''')
cursor.execute('''CREATE TABLE IF NOT EXISTS tab_2(id INTEGER PRIMARY KEY AUTOINCREMENT, col_1 INTEGER)''')
conn.commit()
Rainbow = [ 'black', 'red', 5, 7, 9, 4]
print(Rainbow)
dlin = 0
for i in Rainbow:
if type(i) is str:
cursor.execute('''INSERT INTO tab_1(col_1) VALUES (?)''', [i])
conn.commit()
elif i % 2:
cursor.execute('''INSERT INTO tab_2 (col_1) VALUES ('нечётное')''')
conn.commit()
k = cursor.fetchall()
print(k)
cursor.execute('SELECT COUNT(*) FROM `tab_2`')
cursor.execute('SELECT COUNT(*) FROM `tab_1`')
result_tab_1 = cursor.fetchall()
result_tab_2 = cursor.fetchall()
print(result_tab_1)
print(result_tab_2)
Ответы
Автор ответа:
3
Ответ:
да мне тоже нужно такой приложении ововллсььпдв
for i in spisok:
if type(i) is str:
cursor.execute('''INSERT INTO tab_1(col_1) VALUES (?)''', (i, ))
cursor.execute('''INSERT INTO tab_2(col_1) VALUES(?)''', (len(i),))
conn.commit()
elif type(i) is int:
if i % 2 == 0:
cursor.execute(f'''INSERT INTO tab_2(col_1) VALUES({i})''')
else:
cursor.execute('''INSERT INTO tab_1(col_1) VALUES('нечётное')''')
conn.commit()
tab1 = cursor.fetchall()
print(tab1)
cursor.execute('''SELECT * FROM tab_2''')
tab2 = cursor.fetchall()
print(tab2)
if len(tab2) > 5:
cursor.execute('''DELETE FROM tab_1 WHERE id = 1''')
else:
cursor.execute('''UPDATE tab_1 SET col_1 = 'hello' WHERE id = 1''')
conn.commit()
cursor.execute('''SELECT * FROM tab_1''')
tab1 = cursor.fetchall()
print(tab1)
cursor.execute('''SELECT * FROM tab_2''')
tab2 = cursor.fetchall()
print(tab2)
conn.close()
Похожие вопросы
Предмет: Русский язык,
автор: Dimn11
Предмет: Русский язык,
автор: vikavoks
Предмет: Русский язык,
автор: Аник226
Предмет: Право,
автор: businkabusinka00
Предмет: Алгебра,
автор: denistorshoyev1
conn = sqlite3.connect('prob0.db')
cursor = conn.cursor()
cursor.execute('''CREATE TABLE IF NOT EXISTS tab_1(id INTEGER PRIMARY KEY AUTOINCREMENT, col_1 TEXT)''')
cursor.execute('''CREATE TABLE IF NOT EXISTS tab_2(id INTEGER PRIMARY KEY AUTOINCREMENT, col_1 INTEGER)''')
conn.commit()