AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Record Fragen

Ein Thema von delphinia · begonnen am 9. Nov 2008 · letzter Beitrag vom 9. Nov 2008
Antwort Antwort
Seite 1 von 2  1 2      
delphinia

Registriert seit: 16. Feb 2006
444 Beiträge
 
Delphi 11 Alexandria
 
#1

Record Fragen

  Alt 9. Nov 2008, 11:33
Hallo ihr lieben.

Wie kann ich aus einem Record (ich nutzte es zum Speichern von Datensätzen)
Einen bestimmten Datensatz X komplett löschen?
Doreen
Gruss Doreen
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Record Fragen

  Alt 9. Nov 2008, 11:34
Hai,

was verstehst Du denn unter einem Record? Eigentlich entspricht ein Delphi/Pascal-Record ziemlich genau einem Datensatz.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
delphinia

Registriert seit: 16. Feb 2006
444 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Record Fragen

  Alt 9. Nov 2008, 11:36
Sorry hier mein Record:

Delphi-Quellcode:
type
  TUserData = record
    id: integer;
    title: string;
    uname: string;
    user: string;
    pass: string;
    auto_time: integer;
  end;

var
  UserData : array of TUserData ;
Doreen
Gruss Doreen
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Record Fragen

  Alt 9. Nov 2008, 11:42
In diesem Fall hast Du nur die möglichkeit alle Elemete aus dem Array um eine Position nach vorne zu kopieren und dann das Array um eines zu verkleinern.

Eventuell wäre eine Verkettete Liste oder die Verwendung von einer TList besser für dein Vorhaben?

[edite]
Aus der Verketteliste mal eine Verkette Liste gemacht
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
delphinia

Registriert seit: 16. Feb 2006
444 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Record Fragen

  Alt 9. Nov 2008, 11:48
Zitat von Sharky:
In diesem Fall hast Du nur die möglichkeit alle Elemete aus dem Array um eine Position nach vorne zu kopieren und dann das Array um eines zu verkleinern.

Eventuell wäre eine Verketteliste oder die Verwendung von einer TList besser für dein Vorhaben?
Das weiss ich nicht ob das besser wäre?
Tlist, dachten da kann ich pro Zeile immer nur einen String speichern?
Aber ahbe ja mehrere "Felder" mit Werten und was ist eine Verketteliste?
Doreen
Gruss Doreen
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

Re: Record Fragen

  Alt 9. Nov 2008, 11:51
Genau, bei einer verketteten Liste musst Du nur einen Zeiger "verbiegen", das geht deutlich schneller und komfortabler. Oder bei TList einfach mit Delete(Index) löschen.

[edit] Ein Tutorial zu verketteten Listen findest Du hier[/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
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#7

Re: Record Fragen

  Alt 9. Nov 2008, 11:55
Zitat von DeddyH:
Genau, bei einer verketteten Liste musst Du nur einen Zeiger "verbiegen", das geht deutlich schneller
Das "verbiegen" ist rein von der Übung her interessant (Jeder sollte mal eine Verkette Liste implementiert haben), aber einfacher in der Handhabung ist eine TList allemal. Die paar Nanosekunden Performanceunterschied sind in der realen Welt heutzutage kaum noch der Rede wert.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

Re: Record Fragen

  Alt 9. Nov 2008, 11:57
Das "schneller und komfortabler" bezog sich nicht auf TList, sondern auf das "Nach vorne Kopieren" innerhalb eines dynamischen Arrays
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
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9

Re: Record Fragen

  Alt 9. Nov 2008, 12:17
Zitat von delphinia:
Tlist, dachten da kann ich pro Zeile immer nur einen String speichern?
Jaein. Du machst aus deinem Record eine Klasse und jedr Datensatz ist dass ein Objekt dieser Klasse. Und die Objekte kannst du dann in der Liste ablegen. Beispiel siehe hier: http://www.michael-puff.de/Artikel/C...rKlassen.shtml
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

Re: Record Fragen

  Alt 9. Nov 2008, 12:19
Oder wenn es unbedingt Records sein müssen, Pointer auf diese definieren und die dann in der Liste ablegen.
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
Antwort Antwort
Seite 1 von 2  1 2      


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 07:05 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