Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Access und Truncate? (https://www.delphipraxis.net/62472-access-und-truncate.html)

Die Muhkuh 5. Feb 2006 10:47

Datenbank: Access • Version: 2000 • Zugriff über: ADO + SQL

Access und Truncate?
 
Hi,

kann es sein, dass Accessdatenbanken den Befehl TRUNCATE TABLE nicht unterstützen?

Wenn ja, wie bekomme ich dann am schnellsten meine Datenbank leer? Ein Haufen Delete-Statements draufloslassen?

Elvis 5. Feb 2006 10:54

Re: Access und Truncate?
 
Gibt es irgendeine Form höherer Gewalt, die dich dazu zwingt, dich mit diesem mittelalterlichen Vieh zu ärgern?
Wenn nicht: schaue dir firebird an und das thema ist erledigt
wenn doch: :shock: Das wär' zu hart, dann bin ich raus hier ;)

Die Muhkuh 5. Feb 2006 10:55

Re: Access und Truncate?
 
Hi,

da das Projekt leider schon steht (und auch nicht meins ist, sondern ich bloß helfe), kann ich das nicht auf Firebird umstellen.

Wäre nett, wenn trotzdem jemand ne lösung hat.

MfG,

Manu

marabu 5. Feb 2006 11:53

Re: Access und Truncate?
 
Hallo Manuel.

Delphi-Quellcode:
with ADOTable do
  if Supports([coDelete]) then
    DeleteRecords;

with ADOQuery do
begin
  SQL.Text := 'delete from YOUR_TABLE';
  ExecSQL;
end;
Grüße vom marabu

Die Muhkuh 6. Feb 2006 12:30

Re: Access und Truncate?
 
Hi marabu,

vielen Dank :thumb:

Funktioniert :)

Elvis 6. Feb 2006 13:33

Re: Access und Truncate?
 
Zitat:

Zitat von Spider
Hi marabu,
vielen Dank :thumb:
Funktioniert :)

Auch wenn ich marabu nur sehr ungern widerspreche...
War das nicht genau das, was Spider nicht wollte?

Bei so einem Desktop-Vieh wie Jet [1] würde ich mich nicht wundern, wenn es um Gößenordnungen schneller gehen würde, eine leere .mdb (nur deine MetaDaten drin) aus einer Resource zu zaubern und damit die bestehende zu überschreiben. :lol:
Viel schiefgehen kann dabei nicht... zumindest nicht mehr als es Jet von alleine kann. :mrgreen:


btw: Warum will man eigentlich eine DB leeren? :gruebel:

[1] Wann bezeichnet eigentlich der erste Firebird als IB Expert oder eMails als Outlook? :mrgreen:

Die Muhkuh 6. Feb 2006 13:40

Re: Access und Truncate?
 
Zitat:

Zitat von Elvis
Zitat:

Zitat von Spider
Hi marabu,
vielen Dank :thumb:
Funktioniert :)

Auch wenn ich marabu nur sehr ungern widerspreche...
War das nicht genau das, was Spider nicht wollte?

Ich weiß nicht, was du unter leeren verstehst, aber ich meine damit, dass die DB komplett leer ist. :mrgreen:

Zitat:

Bei so einem Desktop-Vieh wie Jet [1] würde ich mich nicht wundern, wenn es um Gößenordnungen schneller gehen würde, eine leere .mdb (nur deine MetaDaten drin) aus einer Resource zu zaubern und damit die bestehende zu überschreiben. :lol:
Viel schiefgehen kann dabei nicht... zumindest nicht mehr als es Jet von alleine kann. :mrgreen:
Hmm, stimmt. Das wäre auch schnell. Die DB ist ja nur 132kb groß (leer).

Zitat:

btw: Warum will man eigentlich eine DB leeren? :gruebel:
Weil man das, was drinne steht, nicht mehr haben will? :mrgreen:

Elvis 6. Feb 2006 17:20

Re: Access und Truncate?
 
Zitat:

Zitat von Spider
Ich weiß nicht, was du unter leeren verstehst, aber ich meine damit, dass die DB komplett leer ist. :mrgreen:

Ich dachte dir ging es um schnell, also nicht lauter Deletes...
Zitat:

Weil man das, was drinne steht, nicht mehr haben will? :mrgreen:
Hmm... Wenn du die DB bei dir auf der Entwicklungsmaschine meinst, würde ich einfach ein paar eklige, generische VB SProcs gegen die Metadaten runterhacken, der Umweg über Delphi ist ... irgendwo ein Umweg.
Jet + Access ist nunmal das DBMS für die, die keinen Plan von DBMSsen haben. Dadurch ist das alles so easy, dass es selbst ein VB Monk kapiert. (Ich möchte dich hier keineswegs als VB Monk beschimpfen, nur klarmachen wie easy das ist ;) )
Ist es eine DB, die sich auf dem Zielsystem befindet, kapiere ich wirklich nicht wozu das gut sein soll.. :gruebel:

marabu 6. Feb 2006 17:40

Re: Access und Truncate?
 
Hallo Elvis,

mein Arbeitgeber hat Großrechner im Keller stehen und betreibt eine ServerFarm. Auf jeder Workstation im Haus und auf tausenden betreuten außer Haus ist MS Office Professional installiert - ergo Access. Wenn du da als interner Dienstleister ein Bein auf den Boden bekommen möchtest, dann darfst du um Access keinen zu großen Bogen machen - sonst verläufst du dich eventuell und findest den Weg in dein Büro nie mehr. Will sagen, es gibt zwingendere Gründe für den Einsatz eines Datenbank-Produktes als meine Hochschulkenntnisse aus dem Datenbankbereich. Denk mal drüber nach.

Ursprünglich wollte Manuel wissen, ob es ein Äquivalent zu TRUNCATE TABLE gibt. Offensichtlich ist er nicht frei in seiner Entscheidung für ein Datenbank-Produkt. Sollte er irgendwann eine Wahlmöglichkeit haben, dann wird er auch einen Anforderungskatalog haben, gegen den die Alternativen bestehen müssen. Ich überlege gerade ernsthaft, welche Fakten er aus deinem Beitrag herauslesen kann um sie sich für diesen Tag zu merken.

Deinen füheren Beitrag, in dem du darauf hinweist, dass mitunter ein database template die bessere Lösung darstellen kann, finde ich viel konstruktiver.

Freundliche Grüße vom marabu

Elvis 6. Feb 2006 18:09

Re: Access und Truncate?
 
Zitat:

Zitat von marabu
Ich überlege gerade ernsthaft, welche Fakten er aus deinem Beitrag herauslesen kann um sie sich für diesen Tag zu merken.

Ich wollte nur darauf hinweisen, dass er direkt in der Access Umgebung SProcs in VB schreiben könte, die generisch alle Tabellen leeren. Access hat ja, da es direkt für Jet gezimmert wurde einige Abkürzungen parat. ;)
Ich kann mir dabei nur wirklich kaum solche Kommentare verkneifen, schließlich wurde das Ding schon vor ein ganzer Weile selbst von MS abgesägt. Access selbst wird mittlerweile mehr als front End für den SqlServer beworben. Alte Sünden wie Jet werden da gerne vertuscht. ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:22 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz