SQL Zeileneinsatz in eine Tabelle + Schlüssel in seine Verbindungstabelle innerhalb einer Anweisung (many-to-many-Beziehung)
-
28-09-2019 - |
Frage
Hey, ich bin zu ORM verwendet, damit ich riesige Abwesenheit von SQL-Erfahrung haben. Ich möchte wissen, was der beste Weg ist es, eine Zeile in eine Tabelle einfügen, die mit einer anderen Tabelle in many-to-many-Beziehung ist, und in der einer Anweisung auch eine Reihe von zwei Fremdschlüsseln in die jeweilige Verknüpfung Tabelle einfügen zu erhalten Datenintegrität.
Wenn jemand ist Frühling jdbcTemplate verwenden, würde ich möchte auch wissen, ob es eine Unterstützung für diese Aufgabe hat. Vielen Dank im Voraus
Lösung
Das ist in der Regel, was gespeicherte Prozeduren für verwendet werden, zB so etwas wie
CREATE PROC MyInsertM2M(@fieldname1 int, @fieldname2 varchar(20), @Key1 int, @Key2 int etc)
AS
BEGIN
INSERT INTO MyMainTable(fieldname1, fieldname2...)
VALUES(@fieldname1, @fieldname2...)
INSERT INTO MyResolverTable(KeyField1, Keyfield2)
VALUES (@Key1, Key2)
END
(vorausgesetzt, SQL Server)
Google Dann TRAN BEGIN, COMMIT TRAN und ROLLBACK.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow