AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi pfad in einer datenbank speichern
Thema durchsuchen
Ansicht
Themen-Optionen

pfad in einer datenbank speichern

Ein Thema von vamp79 · begonnen am 1. Jan 2003 · letzter Beitrag vom 21. Jan 2003
Antwort Antwort
vamp79

Registriert seit: 1. Jan 2003
9 Beiträge
 
#1

pfad in einer datenbank speichern

  Alt 1. Jan 2003, 14:48
Ein frohes neues Jahr wünsch ich erst einmal,

ich hab ein kleines problemchen, ich bin noch anfänger und brauche
einen Quelltext für einen button, ich hab schon im internet gesucht, aber ich finde nichts richtiges

also, das soll so ablaufen:

beim klick auf den button, soll sich das Windows "Datei öffnen" Fenster öffnen, dann sucht man sich eine datei aus z.B.: C:\bla\bal\bla.jpg
und beim klicken auf OK, soll nur dieser pfad in einer datenbank gespeichert werden.

Die datenbank hab ich bereits fertig

vielen vielen dank

vamp79
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#2
  Alt 1. Jan 2003, 14:53
Vorwarnen: ich kenne mich kaum in Datenbanken aus, aber das sollte doch folgendermaßen funktionieren:
Delphi-Quellcode:
if OpenDialog.Execute then
  sql_query := 'INSERT INTO table ... VALUES (...,'+OpenDialog1.FileName+',...);';
  { dannn Query ausführen usw.}
end;
Chris
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#3
  Alt 2. Jan 2003, 14:15
Hallo vamp79,

wenn du mit einer Paradox oder dBase Datenbank arbeitest, musst du nicht unbedingt SQL benutzen. Es geht dann auch mit:

Delphi-Quellcode:
if OpenDialog.Execute then
begin
  myFileNames.Append;
  myFileNamesNamen.AsString := OpenDialog1.FileName;
  myFileNames.Post;
end;
Dabei gehe ich davon aus, dass du ein TTable Objekt mit dem Namen myFileNames benutzt, dieses auf deine Datenbanktabelle zeigt, die Tabelle ein Feld mit dem Namen "Namen" hat, das du mit dem Feldeditor als persistentes Feld hinzugefügt hast (über rechten Mausklick auf das TTable Objekt). Wenn du nicht zulassen willst, dass ein Eintrag mehrfach vorkommt, kannst du das Feld Namen indizieren und vor Einfügen abfragen, ob der Name schon existiert:

Delphi-Quellcode:
if OpenDialog.Execute then
  if Not myFileNames.FindKey(OpenDialog1.FileName) then
   ...
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
masters001

Registriert seit: 23. Dez 2002
78 Beiträge
 
#4
  Alt 19. Jan 2003, 00:48
Hallo ich benutze auch ein Paradox Datenbank
Ich möchte gerne eine Hoistory speichern
Also immer wenn ich auf senden drücke dann soll ich meiner datenbank ein neuer Eintrag gemacht werden:
(Zeit Datum An Text) Diese Felder hab ich in meiner Datenbank wie kann ich das machen? Hab das bis jetzt mit der datenbank immer nur mit dem
Navigator gemacht...
Vielen Dank
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#5
  Alt 19. Jan 2003, 15:48
Hallo masters001,

wenn du wo auf "Senden" klickst? Ist das ein Schalter in deinem Programm?
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
masters001

Registriert seit: 23. Dez 2002
78 Beiträge
 
#6
  Alt 19. Jan 2003, 19:43
Hallo
Senden ist ein Button
masters001
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#7
  Alt 20. Jan 2003, 07:02
Hallo masters001,

Zitat:
Senden ist ein Button
Ach was! Senden ist auch eine Stadt .

Ich nehme an, Senden ist ein Button in deiner Anwendung. Ich habe deshalb gefragt, weil es ja auch hätte sein können, dass immer wenn du "senden" in deinem eMail Programm von AOL, T-Online oder deinem Netscape eMail Client betätigst die Historie festgehalten werden soll. Ist es aber ein Schalter in deinem Programm, dann ist es einfach. Du fügst dem OnClick Event des Senden-Schalters folgenden Code hinzu:

Delphi-Quellcode:
...
  tabHistory.Append;
  { Datum und Zeit kann in einem Feld stehen }
  tabHistoryZeit.AsDateTime := Now;
  { An soll im Editfeld edAn stehen }
  tabHistoryAn.AsString := edAn.Text;
  tabHistoryText.Assign(meText.Lines);
  tabHistory.Post;
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
masters001

Registriert seit: 23. Dez 2002
78 Beiträge
 
#8
  Alt 20. Jan 2003, 21:48
Hehe...
Was ist denn hier tabHistory ?

Ich habs jetzt mal mit
Code:
   Table1.Append;
         Table1.Fields. //irgendwie so?
         Table1.Post
versucht!
Wenn ich jetzt bei dem table in der mitte das feld in meiner Datenbank history.db ausfüllen möchte wie sprech ich dann dieses Feld genau an das Es funktioniert?
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#9
  Alt 21. Jan 2003, 06:40
Hallo masters001,

tabHistory ist ein TTable Objekt, dem ich den Namen (property: name) tabHistory gegeben habe. Wenn du viele Tabellen verwendest, solltest du den TTable Objekten Namen geben, die sofort anzeigen, um welche Tabelle es sich handelt.

Wenn du auf das TTable Objekt rechtsklickst und "Alle Felder hinzufügen" auswählst, werden alle Felder der zugrundeliegenden Tabelle als sogenannte persistente Felder (Objekte der von der Klasse TField abgeleitete Klassen) eigefügt. Der Name der entsprechenden TField Objekte ist dann "Tabellenname+FeldName" also z.B. tabHistoryZeit den Wert erhälst du über die Eigenschaft Value also z.B.

tabHistoryZeit.Value oder über Cast-Operatoren wie AsString oder AsDateTime, also z.B.

tabHistoryZeit.AsDateTime Wenn du nicht mit persistenten Feldern arbeiten möchtest, kannst du auf dasselbe Feld mit

tabHistory.FieldByName('Zeit').AsDateTime zugreifen.
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Antwort Antwort


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 08:43 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