![]() |
Datenbank: Advantage Database Server • Version: 9.0 • Zugriff über: Advantage Data Architect 9.0
Tabellenspalten von FreeTables in DataDictionary kopieren
Moin Moin DP´ler
Bin noch ein ziemlicher Anfänger in Delphi in Kombination mit der ADS Datenbank, da ich in der Suche nix passendes gefunden habe schildere ich mein Problem mal: Wir haben in der Arbeit sämtliche Datensätze in ADS Freetables (Durch den import durch Paradox damals anscheinend nicht anders möglich, ka). Nun sollen aus den hunderten von FreeTables gewisse Spalten in eine Tabelle in einem neuen Data Dictionary eingefügt werden. 1. Frage: Ist es überhaupt möglich Tabellenspalten und dehren Inhalte, von Freetabels in eine Tabelle in einem DD zu kopieren? 2. Wenn JA, was mach ich hier in der SQL Syntax falsch:
Code:
Also von einem Dictionary in ein anderes klappts, das hab ich getestet.
//FREETABLES -> ADD
INSERT INTO "C:\ADS\OLAP Dictionary\OLAP_DICTIONARY.ADD".TEST_OLAP (TEST_Key) //Gibt das Ziel ADD, sowie die Tabelle und die ZielSpalte an. SELECT KBU_KEY FROM "C:\ag32ads\AFLDaten\K1\M13\01.01.2007-31.12.2007".AGF_KBU; //Gibt die QuellSpalte KBU_Key der QuellTabelle AGF_KBU an Vielleicht kann mir ja jemand weiter helfen wie man das lösen kann, vielleicht klappts ja auch anders oder statt reinem SQL über Delphi-Code oder eine andere SQL Anweisung bin für alles offen, hauptsache ich bekomm die Spalten in mein Dictionary^^. mfg AScu |
AW: Tabellenspalten von FreeTables in DataDictionary kopieren
ich würde die freien Tabellen in ein Unterverzeichnis legen, das macht die Syntax einfacher. Wenn Du dann mit dem Dictionary verbunden bist, reicht folgendes:
Code:
PS: Fehlercodes und -meldungen wären interessant genug, um diese mit-zu-posten;)
insert into mynewtable(field1,field2,field3) select field1,field2,field3 from [.\subfolder\myoldtable]
|
AW: Tabellenspalten von FreeTables in DataDictionary kopieren
Die Freien Tabellen liegen ja in dem Unterverzeichnis 01.01.2007-31.12.2007 wenn du das damit meinst.
Die Fehlermeldung die ich bei meiner Syntax bekommen lautet: poQuery: Error 7200: AQE Error: State = HY000; NativeError = 5174; [iAnywhere Solutions][Advantage SQL][ASA] Error 5174: Advantage failed to open the specified link. C:\ag32ads\AFLDaten\K1\M13\01.01.2007- 31.12.2007: Error 7013: Advantage server file access error. Table name: AGF_KBU |
AW: Tabellenspalten von FreeTables in DataDictionary kopieren
Zitat:
![]() |
AW: Tabellenspalten von FreeTables in DataDictionary kopieren
Jo das habe ich auch rausgefunden, aber ich besitze sämtliche Rechte und wenn ich die selbe Anweisung nicht von Freetables sondern von einem DD ausführe funktioniert es:
Code:
(Die Berechtigungen sind bei dieser Abfrage genau die selben)
//ADD -> ADD FUNKTIONIERT:
INSERT INTO "C:\ADS\OLAP Dictionary\OLAP_DICTIONARY.ADD".TEST_ARTIKEL (TEST_Key) SELECT ArtikelNr FROM "C:\ADS\FIRMA Datenbank\FIRMA_DB.ADD".ARTIKEL |
AW: Tabellenspalten von FreeTables in DataDictionary kopieren
Alles klar die Eckigen klammern warens!! Endlich hab ichs vielen vielen dank das rettet den tag;)
mfg Ascu ps: ich werde sie empfehlen^^ |
AW: Tabellenspalten von FreeTables in DataDictionary kopieren
Zitat:
Übrigens gibt es ab Montag eine Europa-Tour mit dem ADS ![]() |
AW: Tabellenspalten von FreeTables in DataDictionary kopieren
Zitat:
|
AW: Tabellenspalten von FreeTables in DataDictionary kopieren
Liste der Anhänge anzeigen (Anzahl: 1)
Tach Zusammen
Da ich noch eine weitere Frage zu selbigem Thema habe, dachte ich mir das hier zu posten statt einen neuen Thread zu öffnen. Oben genannte und gelöste Problematik möchte ich nun in einem kleinen Delphi Programm lösen. Man klickt auf einen Button und die Datensätze sollen aus der alten Freetable in das Dictionary kopiert werden und über ein DBGrid dann angezeigt werden. Hier der Code des ButtonClick Events:
Delphi-Quellcode:
die Fehlermeldung lautet:
procedure TForm1.Button1Click(Sender: TObject);
begin QuellConnection.ConnectPath := 'C:\ADS\OLAP Dictionary\OLAP_DICTIONARY.ADD'; sInsert := 'insert into test_olap (test_key)'+ 'select kbu_key from [C:\ag32ads\AFLDaten\K1\M13\01.01.2007-31.12.2007\agf_kbu]'; AdsQuery1.SQL.Add(sInsert); AdsQuery1.ExecSQL; AdsQuery1.Active := true; end; nur hab ich die exec funktion doch eingebaut, aseh wohl den wald vor lauter bäumen schon wieder nicht. mfg |
AW: Tabellenspalten von FreeTables in DataDictionary kopieren
Und wenn Du die letzte Zeile einmal weglässt? Es macht ja keinen Sinn, ein INSERT-Query nach Ausführung auf aktiv zu setzen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:45 Uhr. |
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 by Thomas Breitkreuz