Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi temp table (https://www.delphipraxis.net/130097-temp-table.html)

jangbu 3. Mär 2009 12:20

Datenbank: SQL-Server • Zugriff über: BDE

temp table
 
Hallo,

greife bisher nur auf existierende Tabellen (SQL-Server) zu. Für die aktuelle Anwendung langt mir aber eine temporäre Tabelle, d.h. Records von File einlesen, in temp Table speichern bzw. auswerten. Mit Schließen der Anwendung kann die Tabelle wieder verschwinden. Wie erzeuge ich eine temp Table?

Danke

jangbu

nuclearping 3. Mär 2009 12:34

Re: temp table
 
Welche Datenbank? MySQL, Firebird, Advantage, Oracle, ...? "SQL" ist ein Oberbegriff für eine Abfragesprache.

jangbu 3. Mär 2009 13:11

Re: temp table
 
ich verwende sql-server 2000

alzaimar 3. Mär 2009 14:57

Re: temp table
 
Innerhalb einer Session solltest Du das mit '#' bzw. '##' als Prefix des Tabellennamens schaffen.
Versuche mal, die Verbindung zu öffnen, eine Tabelle namens '#Foobar' anzulegen und mit der zu arbeiten. Beim Beenden der Session sollte die Tabelle automatisch gelöscht werden.

Schau mal in der OH des SQL-Servers nach dem Unterschied zwischen '#' und '##'. (Das eine ist lokal, das andere global)

jangbu 4. Mär 2009 07:24

Re: temp table
 
Liste der Anhänge anzeigen (Anzahl: 1)
Danke alzaimer,

in diversen Foren/Doku heißt es, das geht so nicht mit SQL-SERVER-TABELLEN. Tatsächlich funktioniert es aber doch (Erzeugen von SQL-Server-Tabellen aus Delphi), jedoch bei temporären, also welche mit Tabellennamen-Prefix # bzw. ## bekomme ich ich die Fehlermeldung "Ungültiger Tabellenname" (s.A.)

jangbu

jangbu 4. Mär 2009 10:16

Re: temp table
 
Hi,

ich kann zwar aus Delphi heraus auf dem SQL-SERVER eine Tabelle erzeugen, füllen, bearbeiten und anschließend wieder löschen, jedoch war ich der Meinung, da die Tabelle nur für die Laufzeit der Applikation benötigt wird, dieses auch alles im Speicher und nicht physisch auf dem SQL-S machen zu müssen. Wie würde man denn dies machen (temporäre Tabelle)? Habt ihr einen Vorschlag?

jangbu

Medium 4. Mär 2009 10:42

Re: temp table
 
Je nach Delphi Version solltest du auf einer Companion-Tools CD die kbmMemTable Komponente haben. Wenn man einmal geblickt hat wie damit zu arbeiten ist, ist dies eine verdammt praktische Angelegenheit, die wir auch recht häufig einsetzen.

alzaimar 4. Mär 2009 21:37

Re: temp table
 
Zitat:

Zitat von jangbu
Danke alzaimer,

.. mit 'a' Al-Zai-Mar bitte. soviel Zeit muss sein. :mrgreen:
Klappt 'dbo.[#foobar]' nicht? Ansonsten wäre eine Memory-Table (geht auch mit dem TClientDataset), oder TADOTable mit einem Text-Provider... Benötigst du die Tabelle jedoch im Zusammenhang mit anderen Server-Funktionalitäten, müsstest du dir etwas ausdenken.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:37 Uhr.

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