Вставить в (более одной таблицы (3NF)) - PullRequest
0 голосов
/ 26 мая 2019

Я хочу сохранить некоторые данные в базе данных MySQL, и я уже создал схему базы данных, чтобы избежать дублирования (сначала я сохранил всю информацию в одной таблице).

Это моя модель ER:

модель ER

Это мой код MySQL для создания таблиц:

CREATE TABLE `person`(
    personID INT NOT NULL AUTO_INCREMENT,
    firstName VARCHAR(50) NOT NULL,
    lastName VARCHAR(50) NOT NULL,
    PRIMARY KEY (personID)
);

CREATE TABLE `orders`(
    personID INT NOT NULL,
    ordersID INT NOT NULL,
    PRIMARY KEY (personID),
    PRIMARY KEY (ordersID),
    FOREIGN KEY (personID) REFERENCES person(personID),
    FOREIGN KEY (ordersID) REFERENCES order(ordersID),
);

CREATE TABLE `order`(
    orderID INT NOT NULL AUTO_INCREMENT,
    timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    orderDate DATE NOT NULL,
    PRIMARY KEY (orderID)
);

CREATE TABLE `includes`(
    orderID INT NOT NULL,
    partsID INT NOT NULL,
    PRIMARY KEY (partsID)
    FOREIGN KEY (orderID) REFERENCES anfragen(orderID),
    FOREIGN KEY (webseiteninfoID) REFERENCES parts(partsID)

);

CREATE TABLE `parts`(
    partsID INT NOT NULL,
    name VARCHAR(100) NOT NULL,
    price INT NOT NULL,
    PRIMARY KEY (partsID)
);

Как я уже говорилСначала я вставляю все (код Python) в одну таблицу:

cursor.execute('insert into orders(firstName, lastname, orderDate, price, name) values(%s, %s, %s, %s, %s)',
                                       (firstName, lastname, orderDate, price, name))

Я впервые делаю что-то подобное, и я понятия не имею, как вставить значения в более чем одну таблицу.Я также не уверен, что создание моей таблицы базы данных MySQL на 100% правильно.

Так что же означает вставка в оператор для этой схемы базы данных?

Спасибо

...