Wir sind auf Ihre Unterstützung angewiesen!
💚 BITTE helfen Sie uns HEUTE mit einer SPENDE 💚
Helfen Sie das LibreOffice Forum zu erhalten!

❤️ DANKE >><< DANKE ❤️

> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

(gelöst) SQL Befehl zum löschen aller Datensätze einer Tabelle in ein Makro einbauen

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
Stegull
Beiträge: 37
Registriert: Di 6. Dez 2022, 13:36

(gelöst) SQL Befehl zum löschen aller Datensätze einer Tabelle in ein Makro einbauen

Beitrag von Stegull » Mo 9. Jan 2023, 23:35

Sehr geehrte Helfer,

das Löschen aller Datensätze einer Tabelle1 gelingt mir mit dem direkt eingegebenen SQL-Befehl DELETE FROM "Tabelle1". Ich würde diese Funktion gern auf einer Schaltfläche eines Formulars mit einem Klick durchführen können. Dazu bräuchte ich ein Makro. Ich habe mir das Makro Handbuch heruntergeladen und muss konsternierend feststellen dass mir zuviel Grundwissen fehlt um das dort Aufgeschriebene zu verstehen.

Wie müsste das Makro aussehen, welches mir alle Datensätze in Tabelle1 löscht, die Definition aber erhält?

Vielen Dank im Vorraus
Zuletzt geändert von Stegull am Di 10. Jan 2023, 12:01, insgesamt 1-mal geändert.

RobertG
Beiträge: 2735
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: SQL Befehl zum löschen aller Datensätze einer Tabelle in ein Makro einbauen

Beitrag von RobertG » Di 10. Jan 2023, 08:02

Meinst Du das Kapitel Makros aus dem Base-Handbuch oder die Kurzanleitung zur Makroprogrammierung?

Code: Alles auswählen

SUB DeleteWholeContent(oEvent AS OBJECT)
oForm = oEvent.Source.Model.Parent
oConnection = oForm.activeConnection()
oSQL_Statement = oConnection.createStatement()
stSql = "DELETE FROM ""Tabelle1"""
oSQL_Statement.executeUpdate(stSql)
END SUB
Die Doppelung der doppelten Anführungszeichen dient dazu, das nachfolgende doppelte Anführungszeichen zu maskieren. Du musst also in dem SQL-Code bei allen doppelten Anführungszeichen ein weiteres doppeltes Anführungszeichen hinzufügen.
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

Stegull
Beiträge: 37
Registriert: Di 6. Dez 2022, 13:36

(gelöst) Re: SQL Befehl zum löschen aller Datensätze einer Tabelle in ein Makro einbauen

Beitrag von Stegull » Di 10. Jan 2023, 12:01

Danke Robert,

ganz fantastisch!

Ich habe mir das Handbuch Base_09_Makros_V72 heruntergeladen. Das soll keine Kritik an den Autor darstellen, sondern meine Unfähigkeit verdeutlichen, dieses Thema leicht aufzunehmen.

Vielen vielen Dank!

RobertG
Beiträge: 2735
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: (gelöst) SQL Befehl zum löschen aller Datensätze einer Tabelle in ein Makro einbauen

Beitrag von RobertG » Di 10. Jan 2023, 15:19

… und der Autor liest und berät hier ja mit. Bis auf den Anfang des Macro-Kapitels stammt der gesamte Inhalt des Handbuches von mir.
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

Stegull
Beiträge: 37
Registriert: Di 6. Dez 2022, 13:36

Re: (gelöst) SQL Befehl zum löschen aller Datensätze einer Tabelle in ein Makro einbauen

Beitrag von Stegull » Di 10. Jan 2023, 15:37

Das ist mir vollkommen klar.
Respekt!

An alle, die das LibreOffice-Forum nutzen:


Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.

❤️ Vielen lieben Dank für Ihre Unterstützung ❤️

Antworten