AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Liste in ein DBGrid schreiben
Thema durchsuchen
Ansicht
Themen-Optionen

Liste in ein DBGrid schreiben

Ein Thema von andy21 · begonnen am 9. Jan 2008 · letzter Beitrag vom 13. Jan 2008
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
andy21

Registriert seit: 24. Nov 2007
36 Beiträge
 
#1

Liste in ein DBGrid schreiben

  Alt 9. Jan 2008, 18:43
Datenbank: Mybase • Zugriff über: DbGrid
Hallo,

ich benutze Mybase und habe bei mir im Programm einmal ClientDataSet, DataSource und DBGrid.

Speichern und laden funktioniert einwandfrei. Manuell (im DBGrid) kann ich ja auch schreiben. Ich habe jedoch einen Extra-Liste, die ich auch so in einzelne Strings teilen kann, jedoch will ich diese Daten in das DBGrid schreiben um es dann ganz normal zu speichern. Ich habe jedoch überhaupt keine Ahnung wie ich die einzelnen Felder ansteuern kann. Es gibt solche Eigenschaften Fields, wenn ich jedoch folgendes Schreibe

dbgrid1.fields[2]:='hallo';

dann erscheint als Fehlermeldung: [Fehler] Unit1.pas(49): Einer Nur-Lesen Eigenschaft kann kein Wert zugewiesen werden.

Wie kann ich da jetzt etwas in das DB-Grid schreiben, so dass ich auf einen Knopf drücke und es sich dann füllt.


Danke im Voraus.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Liste in ein DBGrid schreiben

  Alt 9. Jan 2008, 18:50
Ich editiere zwar nie in DBGrids, aber geht es evtl. so?dbgrid1.DataSource.DataSet.fields[2]:='hallo'; [edit] Das setzt aber voraus, dass das DataSet zuvor in den Edit-Modus versetzt wurde. [/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
s-off
(Gast)

n/a Beiträge
 
#3

Re: Liste in ein DBGrid schreiben

  Alt 9. Jan 2008, 18:55
Ich glaube, hier liegt eher ein grundlegendes Verständnisproblem zum Umgang mit Datenbanken vor

Schau Dir einfach mal entsprechende Tutorials dazu an.
  Mit Zitat antworten Zitat
andy21

Registriert seit: 24. Nov 2007
36 Beiträge
 
#4

Re: Liste in ein DBGrid schreiben

  Alt 9. Jan 2008, 18:59
Zitat:
Ich editiere zwar nie in DBGrids, aber geht es evtl. so?
Delphi-Quellcode: markieren
dbgrid1.DataSource.DataSet.fields[2]:='hallo';


[edit] Das setzt aber voraus, dass das DataSet zuvor in den Edit-Modus versetzt wurde. [/edit]

Wenn ich diese Zeile nehme erscheint folgende Fehlermeldung: [Fehler] Unit1.pas(49): Inkompatible Typen: 'TField' und 'String'

Und was ist mit dem letzten Satz gemeint?


Zitat:
Ich glaube, hier liegt eher ein grundlegendes Verständnisproblem zum Umgang mit Datenbanken vor Zwinkern

Schau Dir einfach mal entsprechende Tutorials dazu an.
Von daher habe ich das mit dem Mybase. Oder was meinst du da genau? ^^
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Liste in ein DBGrid schreiben

  Alt 9. Jan 2008, 19:00
Sorry, mein Versäumnis.dbgrid1.DataSource.DataSet.fields[2].AsString:='hallo'; Achja, schau auch mal hier (die weiterführenden Links bitte nicht ignorieren )
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
andy21

Registriert seit: 24. Nov 2007
36 Beiträge
 
#6

Re: Liste in ein DBGrid schreiben

  Alt 9. Jan 2008, 19:08
Zitat von DeddyH:
Sorry, mein Versäumnis.dbgrid1.DataSource.DataSet.fields[2].AsString:='hallo'; Achja, schau auch mal hier (die weiterführenden Links bitte nicht ignorieren )
Da erscheint jetzt folgende Fehlermeldung: "Im Projekt project1.exe ist eine Exception der Klasse EDataBaseError aufgetreten. Meldung:'ClientDataSet1atenmenge weder im Editier- noch im Einfügemodus'. Prozess wurde angehalten. Mit einzelne Anweisung oder Start Fortsetzen."

Anbei wie kann man eigentlich die Zeilenanzahl des DBGrids erhöhen? Ich kann nur die Spalten einstellen, aber "Rows" finde ich nirgendwo.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Liste in ein DBGrid schreiben

  Alt 9. Jan 2008, 19:14
Ein DBGrid dient lediglich der Darstellung einer Ergebnismenge, die ihm zugewiesen wurde. Die Schnittstelle zwischen dieser Ergebnismenge (z.B. einer TTable oder einer TQuery etc.) bildet eine DataSource. Wenn sich nun also die Darstellung ändern soll, musst Du die zugrundeliegenden Daten ändern.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
andy21

Registriert seit: 24. Nov 2007
36 Beiträge
 
#8

Re: Liste in ein DBGrid schreiben

  Alt 9. Jan 2008, 19:18
Ähm, ich kann doch die Daten durch eintippen in das DBGrid ändern, also wenn ich etwas in das DBGrid schreibe und es dann speichere sind die Daten geändert, oder? Oder wie war das jetzt gemeint?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: Liste in ein DBGrid schreiben

  Alt 9. Jan 2008, 19:21
Das war nur als Veranschaulichung der Zusammenhänge gemeint. Aber wie die zitierte Fehlermeldung bereits sagt (und ich in meiner ersten Antwort schon angemerkt hatte) musst Du erst in den Editiermodus wechseln. Versuch es mal so:
Delphi-Quellcode:
dbgrid1.DataSource.DataSet.Edit; //in den Editiermodus wechseln
dbgrid1.DataSource.DataSet.fields[2].AsString:='hallo'; //Daten ändern
dbgrid1.DataSource.DataSet.Post; //Änderungen speichern
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
andy21

Registriert seit: 24. Nov 2007
36 Beiträge
 
#10

Re: Liste in ein DBGrid schreiben

  Alt 9. Jan 2008, 19:24
Ah, es klappt. Vielen Dank.
Doch eine Frage bleibt noch. Wie bekomme ich mehr Zeilen hin?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:38 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