Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Daten aus Tabelle in SQL Datenbank schreiben

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Daten aus Tabelle in SQL Datenbank schreiben (1207 mal gelesen)
Fryyy
Mitglied



Sehen Sie sich das Profil von Fryyy an!   Senden Sie eine Private Message an Fryyy  Schreiben Sie einen Gästebucheintrag für Fryyy

Beiträge: 13
Registriert: 26.08.2016

erstellt am: 19. Jun. 2017 11:41    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi,
ich würde gerne die Daten die in einer Tabelle stehen in eine SQL-Datenbank schreiben. Gibt es da vielleicht einen einfachen Weg wie man das realisieren kann?
Ich hatte mir den SQLite Baustein schonmal angeguckt, aber ich werde daraus irgendwie nicht schlau.

Ich hoffe ihr könnt mir irgendwie dabei helfen.

Viele Grüße
Fryyy

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

nadin1223
Mitglied
Ing.


Sehen Sie sich das Profil von nadin1223 an!   Senden Sie eine Private Message an nadin1223  Schreiben Sie einen Gästebucheintrag für nadin1223

Beiträge: 938
Registriert: 29.03.2016

erstellt am: 19. Jun. 2017 12:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Fryyy 10 Unities + Antwort hilfreich

Hallo Fryyy,

das Beispiel von Bangsow hast dir schon angeschaut?

------------------
„Die einfachste Art an korrekte Informationen zu gelangen ist, etwas Falsches in ein Forum zu posten und auf die Korrektur zu warten.“ Matthew Austern

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Fryyy
Mitglied



Sehen Sie sich das Profil von Fryyy an!   Senden Sie eine Private Message an Fryyy  Schreiben Sie einen Gästebucheintrag für Fryyy

Beiträge: 13
Registriert: 26.08.2016

erstellt am: 19. Jun. 2017 13:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi nadin,
ja das hab ich schon gemacht, aber das Beispiel funktioniert irgendwie nicht. Ich glaub die Datenbank ist da irgendwie nicht richtig aufgebaut, weil ich krieg da immer einen Fehler mit "no such table: Lagerbestand".
Oder muss ich davor noch irgendwas einstellen?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Fryyy
Mitglied



Sehen Sie sich das Profil von Fryyy an!   Senden Sie eine Private Message an Fryyy  Schreiben Sie einen Gästebucheintrag für Fryyy

Beiträge: 13
Registriert: 26.08.2016

erstellt am: 20. Jun. 2017 10:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ich habe doch schonmal eine Möglichkeit gefunden wie ich die Daten aus einer Tabelle in die Datenbank schreiben kann. Ich habe das jetzt über eine for-Schleife gelöst.

Zuerst wird einfach eine Tabelle auf der Datenbank erstellt mit den einzelnen Spalten und danach wird dieser Code ausgeführt

for var i:=1 to Tabelle.YDim
SQLite.prepare( "INSERT INTO Test (Zeit, Durchläufe, Typ) VALUES (?1, ?2, ?3)");
SQLite.bindString(1, to_str(Tabelle["Zeit",i]));
SQLite.bindInteger(2, Tabelle["Durchläufe",i]);
SQLite.bindString(3, Tabelle["Typ",i]);
SQLite.step;
next

Mein Problem damit ist aber, dass es sehr lange dauert. Im Moment wird ja jedes Feld einzeln in die Datenbank geschrieben. Gibt es vielleicht eine Möglichkeit das Spaltenweise oder Zeilenweise zu machen? Weil bei mehreren 1000 Feldern würde das wirklich ewig dauern.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

nadin1223
Mitglied
Ing.


Sehen Sie sich das Profil von nadin1223 an!   Senden Sie eine Private Message an nadin1223  Schreiben Sie einen Gästebucheintrag für nadin1223

Beiträge: 938
Registriert: 29.03.2016

erstellt am: 21. Jun. 2017 01:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Fryyy 10 Unities + Antwort hilfreich

erstelle String. Füge in for-Schleife die Werte diesen String hinzu (in SimTalk mit incl). Dann außerhalb von for-Schleife SQL öffnen, den String an SQL übergeben, SQL schließen.
SQL will diese Struktur haben:
INSERT INTO (Spalte, ...) Values (Wert, ...), (Wert, ...);

vg
Nadin


------------------
„Die einfachste Art an korrekte Informationen zu gelangen ist, etwas Falsches in ein Forum zu posten und auf die Korrektur zu warten.“ Matthew Austern

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Fryyy
Mitglied



Sehen Sie sich das Profil von Fryyy an!   Senden Sie eine Private Message an Fryyy  Schreiben Sie einen Gästebucheintrag für Fryyy

Beiträge: 13
Registriert: 26.08.2016

erstellt am: 06. Jul. 2017 15:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Habe das mal versucht, es wird auch soweit in die Datenbank geschrieben, aber leider wird der komplette String in ein Feld geschrieben und ich möchte ja einfach die Tabelle wie sie in Plant Simulation steht in einer SQL-Datenbank. Also irgendwie wird der Zeilenumbruch da nicht beachtet.

Hat irgendwer noch eine Idee wie das funktionieren könnte?

VG

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Fryyy
Mitglied



Sehen Sie sich das Profil von Fryyy an!   Senden Sie eine Private Message an Fryyy  Schreiben Sie einen Gästebucheintrag für Fryyy

Beiträge: 13
Registriert: 26.08.2016

erstellt am: 12. Jul. 2017 13:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ok hat sich erledigt! Hab eine Methode gefunden wie es wirklich schnell geht. Ich speichere mir die Daten aus der Tabelle erst im :memory: über den SQLite-Baustein und kopiere mir diese dann in eine Datenbank mit dem Befehl

SQLite.savetoFile()

Das geht um so vieles schneller als wenn man die Daten direkt in die Datenbank speichert.

Trotzdem vielen Dank für deine Hilfe nadin!!!

VG
Fryyy

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz