Я использую SQL Server, Python, pypyodbc. таблицы У меня есть следующие:Вставка данных в таблицу с использованием того же значения внешнего ключа
tbl_User: id, owner
tbl_UserPhone: id, number, user_id
user_id является первичным ключом пользователя и внешний ключ UserPhone. Я пытаюсь вставить 2 разных телефона в тот же user_id, используя pypyodbc. Это одна из вещей, которые я пробовал, которые не работали:
cursor = connection.cursor()
SQLCommand = ("INSERT INTO tbl_UserPhones"
"(id,number,user_id)"
" VALUES (?,?,?)")
values = [userphone_index, user_phone,"((SELECT id from tbl_User where id = %d))" % user_id_index]
cursor.execute(SQLCommand, values)
cursor.commit()
Не могли бы вы объяснить, что «не работает»? Вы получили сообщение об ошибке? Нужно больше информации –
Нет, он просто пропустил строку cursor.commit(). он должен работать? –
Если бы я был вами, я бы использовал Python для печати SQLCommand, а затем попробуйте вставить эту команду в консоль для SQL Server (например, Management Studio), чтобы узнать, что такое ошибка. Я бы предположил, что именно так определена ваша таблица tbl_UserPhones, но это невозможно узнать без дополнительной информации. –