sql >> Databasteknik >  >> RDS >> Mysql

Fylla i fält i MySQL-databasen

Baserat på din tabell från din tidigare fråga måste du INSERT poster först på den oberoende tabellen (eller bastabellerna ). Några av dessa tabeller är event , semester , Major_Minor , etc. Dessa kallas oberoende tabeller eftersom inga främmande nyckelbegränsningar definierades.

Exempelfråga att infoga i oberoende tabeller,

-- INSERTING records on table event
INSERT INTO event (ID, event_description, event_datetime) VALUES
  (1, 'hello', NOW()),
  (2, 'world', NOW()),
  (3, 'stack', NOW()),
  (4, 'overflow', NOW());

-- INSERTING records on table semester
INSERT INTO semester (ID, SEMESTER_NAme) VALUES
  (1, 'First Semester'), 
  (2, 'Second Semester'), 
  (3, 'Summer'); 

-- INSERTING records on table Major_Minor
INSERT INTO Major_Minor (ID, Major_Minor_Name) VALUES
  (1, 'Math'),
  (2, 'Science'),
  (3, 'English');

-- INSERTING records on table class
INSERT INTO class (ID, class_name) VALUES
  (1, 'Alpha'),
  (2, 'Beta'),
  (3, 'Gamma'),
  (4, 'Omega');

Efter att poster har infogats kan du nu INSERT på beroende tabeller. Dessa kallas beroende tabeller eftersom begränsningar för främmande nyckel definierades på dem. Du kan inte lägga till ett värde på vissa fält, det finns inte i den andra tabellen. Exempel på beroende tabell är Major_Class_br tabell,

-- INSERTING records on table Major_Class_br
INSERT INTO Major_Class_br (ID, Class_ID, Major_Minor_ID) VALUES
    (1,1,1),
    (2,1,2),
    (3,1,3),
    (4,2,1),
    (5,2,1),
    (6,4,2);

Som du kan se är värdena för Class_ID och Major_Minor_ID existerade redan i tabeller:class och Major_Minor eftersom tabellen Major_Class_br är beroende av dem. För att illustrera mer om det, försök att köra frågan nedan där värdet för Class_ID finns inte ännu i Class tabell,

INSERT INTO Major_Class_br (ID, Class_ID, Major_Minor_ID) VALUES (7,5,2);

och du kommer att se det här felet




  1. Sqlite Android Raw Query INSERT INTO Fungerar inte

  2. MySQL-fråga, 3 tabeller, t1-t2 uppdatera sedan t3. Hur kan jag göra detta på det mest effektiva sättet?

  3. JSON_EXTRACT() – Returnera data från ett JSON-dokument i MySQL

  4. SQL korsreferenser en annan tabell för att kontrollera data