Создаю тг бота с библиотекой aiorgam необходимо создавать бд,для этого обратился к библиотеке SQL.
Чтобы не загромождать основной код сделал отдельный файл с функциями обращения к SQL, и прочими необходимыми вещами. Когда вызывая функцию записи в БД выдает ошибку
TypeError: db_table_val() missing 1 required positional argument: 'date'
Сам основной код
import sqlite3 as sq
from aiogram import Bot, Dispatcher, executor, types
from table_sql import create, db_table_val, add_data
bot = Bot(token=API_TOKEN)
dp = Dispatcher(bot, storage=storage)
con = sq.connect('databased.db')
cur = con.cursor()
con.execute(f"""CREATE TABLE IF NOT EXISTS users (user_id, username)""")
con.commit()
@dp.message_handler(commands=['start'])
async def start_bot(message: types.Message):
await bot.send_message(message.from_user.id, text='the bot started' )
await bot.send_message(chat_id=admin, text='the bot started '
+"\n @"+str(message.from_user.username ))
db_table_val(message.from_user.id, message.from_user.username, message.date)
И код функции
import sqlite3 as sq
import aiogram
con = sq.connect('databased.db')
cur = con.cursor()
sq.connect('databased.db') as con:
con.execute(f"""CREATE TABLE IF NOT EXISTS {message.from_user.username} (user_id, username, date)""")
con.commit()
def db_table_val(message, user_id, username, date:str ):
cur.execute(f'INSERT INTO {message.from_user.username} (user_id, username, date) VALUES (?, ?, ?)',
(user_id, username, date))
con.commit()
При этом если не записывать функцию в отдельном файле все работает нормально.