Ваша модель данных неверна, если вы считаете, что вам нужно несколько PK с одинаковыми значениями. Частью определения PK является уникальность.
Кроме того, используйте параметры, а не конкатенацию строк.
Кроме того, что с for
.... if
? Вы только что сделали 2 заявления очень сложными!
Возможно, вы упустили фактическую таблицу "package", и то, что вы создаете, является таблицей "sub package", где ID пакета - это FK, а не PK. Очень трудно сказать, хотя.