заказ запасные:Как избежать дублирования данных в таблице Mysql?
order_id(PK) item status order_no
1 pant 0 100
2 shirt 1 200
продукт-:
prod_id(Fk) id(pk) price quantity order_no status
1 1 10 2 100 0
1 2 20 3 100 0
2 3 15 1 200 1
Это мои два table-: заказ & продукта.
Что случилось, чтобы вставить данные в таблицу продуктов, мой запрос сначала проверяет статус таблицы заказов &, если он равен 0, он добавляет данные в таблицу продуктов.
Моя программа запускается по заданию CRON..so каждый раз, когда он просто проверяет статус заказа &, если он равен 0, , он снова добавляет те же данные в таблицу продуктов.
т.е. мой стол продукт стал как этот
prod_id(Fk) id(pk) price quantity order_no status
1 1 10 2 100 0
1 2 20 3 100 0
2 3 15 1 200 1
1 4 10 2 100 0
1 5 20 3 100 0
, которые я не хочу. мой столбец id - это pk, который автоматически увеличивается ... так Как избежать дублирования данных в таблице Product?
Можно ли каким-либо образом обновить или заменить те же данные?
плз наставит меня ..
HI eggyal, я не могу создать уникальный индекс в таблице продуктов, так как я поддерживаю внешний ключ prod_id, который означает, что эти продукты из этого заказа нет. поэтому он может содержать то же значение, что и пример u, который можно проверить на заказ №. 1 было 2 продукта. – Prat
@Prat: как вы определяете, хотите ли вы вставить новую запись или обновить существующую? Это 'order_no'? Сочетание 'order_no' и' prod_id'? Ваш вопрос непонятен. – eggyal
Статус заказа 0 означает, что данные не перемещаются в оракулу ... поэтому, когда order_status становится 1, данные перемещаются в оракул ... но то, что произошло, до момента перемещения данных, данные о продукте вставляются в таблицу продуктов, которую я не хочу. . – Prat