Найти - Пользователи
Полная версия: Как вставить значения в строку инсерта в оракл?
Начало » Python для новичков » Как вставить значения в строку инсерта в оракл?
1
Anton13
Всем привет, парюсь.

Хочу вставить данные динамически через f примерно вот так:

        #sql_insert = """Insert into ANTON.DIM_SETS (DATE_ID,DAY_IN_WEEK_NUMBER,DAY_IN_MONTH_NUMBER,DAY_NAME,WEEKDAY_FLAG,WEEK_IN_YEAR_NUMBER,MONTH_IN_YEAR_NUMBER,MONTH_NAME,QUARTER_NUMBER,YEAR_NUMBER)values ((2001-01-01, 'YYYY-MM-DD'), 1, 1, "D", "D", 3, 4, "F", 3, 4)"""
# data = [(f'{date_id}, {dinweeknum + 1}, {dinmonthnumber}, {dayname}, {dayflag}, {wnum}, {mnum}, {mname}, {quarter}, {yeardate}')]

# sql_insert = """INSERT INTO DIM_DATES VALUES (f'TO_DATE('{date_id}', 'YYYY-MM-DD'), {dinweeknum + 1}, {dinmonthnumber}, {dayname}, {dayflag}, {wnum}, {mnum}, {mname}, {quarter}, {yeardate}')"""
Ничего не получается. Прошу помочь.
py.user.next
Не используй f'' - это глупость, ставшая модной на хайпе. Используй str.format(), она не занимает имена в программе.
Пример
  
>>> queryfmt = """INSERT INTO {table} VALUES ({one}, {two}, {three}, '{string}');"""
>>> 
>>> query = queryfmt.format(table='tab', one='1', two='2', three='3', string='text')
>>> print(query)
INSERT INTO tab VALUES (1, 2, 3, 'text');
>>>
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB