Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Datenbank fehlt :( (https://www.delphipraxis.net/187547-datenbank-fehlt.html)

derklausi 8. Dez 2015 10:38

Datenbank: Access mdb • Version: 1 • Zugriff über: 1

Datenbank fehlt :(
 
Hallo Zusammen,

ich bin totaler Anfänger in Sachen Programmieren (das Vorab)

Ich habe folgendes Problem,

ich habe eine mdb datenbank in Delphie eingebunden ich kann Datensätze anzeigen lassen,neue eingeben und speichen das geht alles.

Ich möchte nun nach dem Kompilieren die Datei auf arbeit benutzen allerdings fehlt ja die Datenbak bzw die mdb datei von access. Daher meine Frage wie kann ich die Datei mit Installieren oder mitschicken oder oder ...

Viele Grüße
Klaus

Perlsau 8. Dez 2015 11:34

AW: Datenbank fehlt :(
 
Im Delphi-Treff existiert eine fast gleichlautende Anfrage, die ich bereits beantwortet habe, ohne jedoch eine Rückmeldung zu erhalten. Kann es sein, daß dieses Posting ebenfalls von dir ist?

derklausi 8. Dez 2015 11:51

AW: Datenbank fehlt :(
 
Hi,

nein der Post ist nicht von mir aber ich habe es mir gleich mal angeschaut. Muss ich den Text dann nur Kopieren und in meine Form einfügen oder muss ich noch was anpassen?

Perlsau 8. Dez 2015 12:03

AW: Datenbank fehlt :(
 
Natürlich mußt du den Code – wenn es das ist, was du mit Text meintest – an deine eigenen Bedürfnisse anpassen. Ich kann ja schließlich nicht wissen, wie dein Connection-String aussieht. Davon abgesehen würde ich dir empfehlen, vor dem Entwickeln ernsthafter Anwendungen, die in einem Produktiv-Umfeld eingesetzt werden sollen, ein oder zwei Einsteiger-Tutorials durchzuarbeiten, wie z.B. das Delphi-Starter-Ebook in der Delphi-Praxis im Delphi-Treff.

Zitat:

Zitat von derklausi (Beitrag 1323738)
Muss ich den Text dann nur Kopieren und in meine Form einfügen oder muss ich noch was anpassen?

Deine Frage macht deutlich, daß du nicht wirklich verstanden hast, was ich im verlinkten Thread empfohlen habe. Das Erlernen der Grundlagen kann dir niemand abnehmen ...

Noch ein paar Fragen zum Verständnis:
  1. Welche Delphi-Version verwendest du?
  2. Mit welchen Datenbank-Komponenten arbeitest du?
  3. Wie sieht dein Code zum Verbinden mit der Datenbank aus?

derklausi 8. Dez 2015 12:23

AW: Datenbank fehlt :(
 
ich verwende Delphi 2010

mit folgenden Datenbank Komponenten arbeite ich

ADOConnektion1
AdoTable1
DatSource1

und noch der Code zum vervbinden der Datenbank

Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=C:\Users\Klaus\Documents\DatenbankFürDelphi TESTen.mdb;Mode=Share Deny None;Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;

ok das Ebook werde ich lesen

Perlsau 8. Dez 2015 12:40

AW: Datenbank fehlt :(
 
Das ist nicht der Code zum Verbinden mit deiner Datenbank, das ist lediglich der Connectionstring.

Zitat:

Zitat von derklausi (Beitrag 1323741)
ok das Ebook werde ich lesen

Das tut offenbar not :-D
Aber nicht nur lesen, sondern aktiv durcharbeiten. Dort findest du zahlreiche Übungsprojekte, mit deren Umsetzung du dein Wissen nach & nach strukturiert aufbaust und erweiterst.

derklausi 8. Dez 2015 12:49

AW: Datenbank fehlt :(
 
hm ok schade,trotzdem danke

p80286 8. Dez 2015 15:29

AW: Datenbank fehlt :(
 
also wenn es bei Dir zu Hause funktioniert, dann mußt du nur die DB-Datei im Connection-String austauschen:
Code:
;Data Source=C:\Users\Klaus\Documents\DatenbankFürDelphi TESTen.mdb;
Voraussetzung ist natürlich, daß Dein Arbeitsplatzrechner, die gleichen Möglichkeiten zur Verfügung stellt, wie Dein privater Rechner.

Eine weitere Möglichkeit wäre es, den Connectionstring von ADO am Arbeitsplatz neu erstellen zu lassen.

Gruß
K-H

derklausi 8. Dez 2015 18:42

AW: Datenbank fehlt :(
 
Hallo K-H,

danke das du mir schreibst. Was mache ich den wenn der Ziel Rechner kein delphi drauf hat? Die Anwendung läuft ja trotzdem allerdings ohne Daten da ja die Mdb Datei fehlt. Und am Ziel Rechner kann ich ja die ADO nicht ändern. Kann man nicht einfach ein Paket machen wo alles drinnen ist. Ganz schön kompliziert.

Grüße

nuclearping 8. Dez 2015 19:05

AW: Datenbank fehlt :(
 
Der Zielrechner braucht kein Delphi, nur eine funktionierende Access-Installation. Und du musst halt nur den Connection-String so anpassen, dass die Datenbank gefunden wird. Entweder setzt du den String dynamisch zusammen oder du änderst ihn auf einen Pfad, der immer verfügbar ist (zB weil du ihn selbst anlegst), zB "C:\MeinProgramm\Datenbank.mdb".

Perlsau 8. Dez 2015 19:16

AW: Datenbank fehlt :(
 
Nein, eine Access-Installation ist nicht notwendig, da die Access-Datei ja nicht mit der Access-Anwendung geöffnet wird, sondern mit dem in Delphi entwickelten Client.

Das mit dem Connection-String scheint für den TE noch zu hoch zu sein, denn er ist, wie er selbst schreibt, ein absoluter Neuling in Sachen Programmierung und versteht daher auch die einfachsten Hinweise zunächst einmal nicht.

derklausi 8. Dez 2015 19:18

AW: Datenbank fehlt :(
 
Super so funktioniert es. danke nuclearping und danke an K-H

derklausi 8. Dez 2015 19:19

AW: Datenbank fehlt :(
 
Zitat:

Zitat von Perlsau (Beitrag 1323777)
Nein, eine Access-Installation ist nicht notwendig, da die Access-Datei ja nicht mit der Access-Anwendung geöffnet wird, sondern mit dem in Delphi entwickelten Client.

Das mit dem Connection-String scheint für den TE noch zu hoch zu sein, denn er ist, wie er selbst schreibt, ein absoluter Neuling in Sachen Programmierung und versteht daher auch die einfachsten Hinweise zunächst einmal nicht.

jeder fängt mal klein an.... sorry das es auch solche gibt.

Der Thread kann geschlossen werden

Perlsau 8. Dez 2015 19:52

AW: Datenbank fehlt :(
 
Lieber Klausi, das war kein Vorwurf an dich, sondern lediglich eine Feststellung. Ich weiß nicht, was ich dir sonst noch sagen könnte, um dir zu helfen, dein Problem zu lösen, insbesondere, da du ja nicht einmal die einfachsten Fragen beantwortest. Ich hatte dich nach deinem Code für die Verbindung mit der Datenbank gefragt, aber du hast nur den Connectionstring gepostet. Kein Vorwurf, aber du kennst den Unterschied zwischen Code zum Verbinden mit der Datenbank und dem Connectionstring offenbar nicht. Der Code ist das, was du in deinen Editor hineintippst. Der Connectionstring steht im Objektinspektor unter der Eigenschaft ConnectionString. Um diese Eigenschaft zur Laufzeit zu ändern, benötigst du Code, den ich bereits im verlinkten Posting getippt habe, ohne jemals eine Rückmeldung des dortigen TE erhalten zu haben, ob ihn dieser Code weitergebracht hat. Du könntest zumindest mitteilen, daß du nicht verstehst, was dort steht, damit man deinen Kenntnisstand ungefähr erahnen kann. Einfach nur was zusammenzuklicken ist im Grunde noch keine Programmierung, auch wenn dadurch automatisch Code erzeugt wird.

Ich bin kein studierter Lehrer und maße mir daher auch nicht an, eine pädagogische Fachkraft zu sein. Aber ich versuch's nochmal mit 10 einfachen Fragen zu den allernotwendigsten Basiskenntnissen, die dein Problem betreffen:
  1. Weißt du, was ein String ist?
  2. Weißt du, wie man mehrere Strings zu einem einzigen String kopiert?
  3. Weißt du, was eine Zuweisung ist und wie sie auszusehen hat?
  4. Weißt du, was Properties sind?
  5. Weißt du, wie man eine Verbindung zu einer Datenbank aktiviert?
  6. Weißt du, wie man prüft, ob die Verbindung zur Datenbank besteht?
  7. Weißt du, was eine Function ist?
  8. Weißt du, was eine Procedure ist?
  9. Kennst du den Unterschied zwischen einer Function und einer Procedure?
  10. Weißt du, was eine Methode ist und wie man sie erstellt?
Wenn du hier schon ins Trudeln gerätst, ist es wirklich und ohne dich heruntermachen zu wollen unabdinglich, dir diese Grundkenntnisse anzueignen, bevor du mit ernsthafter Programmierung beginnst. Ohne Scheiß :stupid: du kommst da nicht drumrum, wenn du Programmieren lernen willst. Wenn dir das zuviel ist, dann bleibt noch die Möglichkeit, einfach nur mit Access zu arbeiten. Dort kannst du ebenfalls Tabellen und Formulare erstellen, mußt für die erweiterte Anwendungsentwicklung aber auch eine Programmiersprache lernen, nämlich Visual Basic for Applications. Dafür gibt es ebenfalls diverse Fachforen, die ich aber nicht wirklich kenne.

Zitat:

Zitat von derklausi (Beitrag 1323779)
Der Thread kann geschlossen werden

Threads werden hier gewöhnlich nicht geschlossen. Geschlossene Threads erkennst du an dem Vorhängeschloß und daran, daß du keine Antwort mehr verfassen kannst. Wenn du dir solche Threads mal anschaust, dann erkennst du sehr schnell, warum die geschlossen wurden.

jobo 8. Dez 2015 20:03

AW: Datenbank fehlt :(
 
Zitat:

Zitat von p80286 (Beitrag 1323755)
Eine weitere Möglichkeit wäre es, den Connectionstring von ADO am Arbeitsplatz neu erstellen zu lassen.

Noch ein Tipp dazu, wenn es mal auf einem Rechner klemmt:
Notepad oder anderen Editor nehmen, den Providertext (connectionstring) aus #5 dort eintragen und unter <beliebigerDateiname.UDL> speichern. Es geht auch eine leere UDL Datei, der folgende Dialog enthält dann andere Vorgaben.
Diese Datei mit Doppelclick öffnen und interaktiv Provider, Dateiverzeichnis, usw. einstellen und testen und wieder speichern.
Die Datei enthält danach den funktionierenden neuen Connectionstring.

Hakt es dabei irgendwo, so ist die MDAC oder Providerinstallation auf dem System nicht in Ordnung.
Vorteil dieses Vorgehens: Der gesamte Zugriffstest / Einstellung funktioniert ohne dass Dein Programm dem System ein einziges Haar krümmt. Das kann manchmal von Vorteil sein, besonders wenn man Ärger mit der IT vermeiden möchte.

Diesen Provider Dialog kannst Du auch per Delphi Code starten.
Insgesamt ist bei dem Kram ähnlich wie bei ODBC darauf zu achten, ob man 32 oder 64 bit Treiber ansprechen und verwalten möchte.

pertzschc 9. Dez 2015 09:26

AW: Datenbank fehlt :(
 
Zitat:

Zitat von jobo (Beitrag 1323781)
Diesen Provider Dialog kannst Du auch per Delphi Code starten.
Insgesamt ist bei dem Kram ähnlich wie bei ODBC darauf zu achten, ob man 32 oder 64 bit Treiber ansprechen und verwalten möchte.

Der Threadersteller hat von Delphigrundlagen wohl wenig Ahnung, wie man den Ausführungen von Perlsau entnehmen kann, da wird ihn alles weitere sicher noch mehr überfordern :wink:
Christoph

jobo 9. Dez 2015 10:29

AW: Datenbank fehlt :(
 
Zitat:

Zitat von pertzschc (Beitrag 1323792)
Der Threadersteller hat von Delphigrundlagen wohl wenig Ahnung, wie man den Ausführungen von Perlsau entnehmen kann, da wird ihn alles weitere sicher noch mehr überfordern :wink:
Christoph

Ich habe da ein sehr praktikables Verfahren beschrieben, das großteils mit Programmierung gar nichts zu tun hat. Niveau: Druckertreiber installieren oder niedriger. Der Hinweis am Ende, dass das alles auch durch Programmierung regelbar ist, dürfte erlaubt sein und macht die Sache rund. Damit und mit dem 32/64 Bit Hinweis hat der TE oder jede andere Leser einige gute Infos, wie man das angehen kann und was die Tücken sein können.
Ob die Skills, Interesse und Bedarf beim Leser nun ausreichen oder nicht, ist sehr spekulativ.
Und sollte mich solch eine Spekulation hindern, hier einen praktischen Tipp zu posten? Ich bin schließlich nicht vom Verteidigungministerium! ;) Aber ja, die volle Wahrheit könnte einige verunsichern.

Daniel 9. Dez 2015 10:31

AW: Datenbank fehlt :(
 
Moin,

zusätzliche Infos können nie schaden. Jeder von uns hat Bereiche, in denen der nicht so firm ist und ab und an findet man sich in einer Lage wieder, die es erfordert, dass man tiefer in die Materie einsteigt. Und dann ist man über diese Hinweise froh, auch wenn man sie vielleicht anfangs links liegen gelassen hat.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:54 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