![]() |
Datenbank: sqlite3 • Version: ? • Zugriff über: sqlconnection
wie nutze ich dbedit und ähnliches bei sql?
Ich habe eine SQL Datenbank mit zwei Tabellen.
Datensätze hinzufügen, Editieren usw ist alles kein Problem. Bei Auswahl eines Datensatzes fülle ich die edit felder so:
Code:
Da es nur wenige sind, ist das auch ok. Nun möchte ich allerdings ein Grid mit den Daten aus tabelle2 füllen und da wäre diese Art etwas umständlich. Daher dachte ich mir ein DBGrid zu verwenden. edit2.Text := sqlquery1.FieldByName('name').Asstring; edit3.Text := sqlquery1.FieldByName('vorname').Asstring; Auf meinem Formular habe ich nur eine sqlconnection und ein sqlquery. Daten füge ich so hinzu:
Code:
Bestimmte Datensätze finde ich so:
FSQLCommandText := 'INSERT INTO customers (Name,vorname,wohnort) VALUES ('+name+','+vorname+', '+wohnort+');';
SQLConnection1.ExecuteDirect(FSQLCommandText);
Code:
Kann mir bitte jemand erklären was ich tun muss um ein dbgrid verwenden zu können?
SQLBefehl:='SELECT * FROM customers WHERE id = '+id+';';
SQLQuery1.SQL.Text := SQLBefehl; SQLQuery1.Active := true; Danke. |
AW: wie nutze ich dbedit und ähnliches bei sql?
Du brauchst eine Datasource (kannst du auch aufs Formular ziehen). Der Datasource weißt du dann deine Query zu und dem DBGrid weißt du die Datasource zu
Also DBGrid.Datasource = Datasource; Datasource.Dataset = Query; Mit allen anderen DB-Komponenten funktionierts genaus. Du brauchst auch nur 1 Datasource die du dann allen DB-Komponenten zuweisen kannst. |
AW: wie nutze ich dbedit und ähnliches bei sql?
Dann kommt die Fehlermeldung "Die Operation ist bei einer unidirektionalen Datenmenge nicht gestattet"
Edit:// Also wenn ich versuche der Datasource das Query zuzuweisen. Verwendet habe ich Tsqlquery und Tsqlconnection. |
AW: wie nutze ich dbedit und ähnliches bei sql?
Dann versuch es mal mit einem
Delphi-Quellcode:
bei Deinem Grid.
ReadOnly:=True
Gruß K-H P.S. Könnte mir jemand die Fragestellung aus der Überschrift erklären? |
AW: wie nutze ich dbedit und ähnliches bei sql?
Habe mich falsch ausgedrückt.
Die Fehlermeldung "Die Operation ist bei einer unidirektionalen Datenmenge nicht gestattet" kommt wenn ich versuche der Datasource die Eigenschaft DataSet dem query zuzuweisen. Habe die Tdatasource auf das Formular gezogen und nehme dort die Einstellungen vor. |
AW: wie nutze ich dbedit und ähnliches bei sql?
Liefert denn die Query eine beschreibbare Datenmenge zurück? Bei Oracle zB muss man die RowID mit selektieren.
Sherlock |
AW: wie nutze ich dbedit und ähnliches bei sql?
Ich habe die Tsqlquery schon auf meinem Formular.
Soweit funktioniert mein Programm auch. Nun habe ich eine Tdatasource auf das Formular gezogen. Sobald ich die Eigenschaft DataSet auf SqlQuery1 stelle, kommt die Fehlermeldung. Es geht also nicht. Ich kann aber von der SqlQuery die Eigenschaft DataSource auf DataSet stellen. Aber das bringt mir anscheinend nichts. Wie gesagt, ziel ist es dbedit, dbgrid usw zu nutzen. Abgesehen davon ist meine Datenbank voll funktionsfähig. |
AW: wie nutze ich dbedit und ähnliches bei sql?
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:07 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-2025 by Thomas Breitkreuz