Libreoffice Base - SQL Queries - Meerdere rijen toevoegen met behulp van INSERT INTO SQL-opdracht

Hoi,

Sinds kort ben ik in de wereld van Databases en LibreOffice Base gedoken. Ik wordt erg enthousiast van de mogelijkheden van dit OpenSource pakket.
Na de grafische schil doorgespit te hebben ben ik aangekomen bij de SQL-opdrachten. Bij de opdracht INSERT INTO lukt het me om per keer 1 rij tegelijk in te voeren. Dit is alleen niet echt praktisch.

Probeer ik echter meerdere rijen tegelijk toe te voegen, dan krijg ik constant foutmeldingen. Ik probeer het volgende:

Er is een lege Tabel aangemaakt met de naam “PERSONEN” en de kolommen: PID (int), Voornaam (varchar 255) en Achternaam (varchar 255).

Als ik hierbij een rij toevoeg met de opdracht:
INSERT INTO PERSONEN (PID, Voornaam, Achternaam)
VALUES (1 , ‘Erik’ , ‘Grootebroek’);
Dan gaat dit zonder problemen.

Probeer ik meerdere rijen tegelijk toe te voegen met de opdracht:
INSERT INTO PERSONEN (PID, Voornaam, Achternaam)
VALUES (2 , ‘Sonja’ , 'Kleinejurk), (3, ‘Robert’,‘Rubbersteen’)
Dan krijg ik de volgende foutmelding:
2: firebird_sdbc error:
*Dynamic SQL Error
*SQL error code = -104
*Token unknown - line 2, column 36
*,
caused by
‘isc_dsql_prepare’
De komma lijkt niet herkent te worden door Libreoffice. De bron hiervan is:

Een andere methode die ik tegenkwam was om na tussen de rijen een ; te zetten en dan weer compleet opnieuw te beginnen met de invoer (INSERT INTO…). Hierbij kreeg ik de zelfde foutmelding.

Weet iemand wat ik verkeerd doe?

Bij voorbaat dank.

Het invoegen van meerdere gegevenssets tegelijk verschilt van database tot database, en in sommige databases is het helemaal niet mogelijk. Voor de Firebird database kunt u de LibreOffice Base handleiding gebruiken als beschrijving: Base Guide. Misschien ook, omdat die wat uitgebreider is, de Duitstalige Base handleiding: Base Handbuch 7.5. U kunt ook rechtstreeks naar Firebird kijken: Firebird description.

Firebird vereist momenteel het statement

EXECUTE BLOCK AS
BEGIN
   INSERT INTO PERSONS (PID, Voornaam, Achternaam)
   VALUES (2 , 'Sonja' , 'Kleinejurk');
   INSERT INTO PERSONS (PID, Voornaam, Achternaam)
   VALUES (3, 'Robert', 'Rubbersteen');
END

Vertaald met www.DeepL.com/Translator (gratis versie)

Thank you Robert,

If:

EXECUTE BLOCK AS
BEGIN


END

is used, I’m able to insert multiple rows at once.