Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Frage zu MS SQL Server Desktop Engine(MSDE) (https://www.delphipraxis.net/10826-frage-zu-ms-sql-server-desktop-engine-msde.html)

Gambit 26. Okt 2003 09:35


Frage zu MS SQL Server Desktop Engine(MSDE)
 
Moin!

Ich habe hier eine Datenbankanwendung geschrieben, die mittels ADO auf eine Access Datenbank zugreift. Nun möchte ich gerne das Ganze auf SQL Server umstellen und habe mir mal von meiner Office CD die MSDE installiert.
Jetzt dachte ich, könnte ich mir eine neue Datenbank erstellen und da gibts ja dieses Dienstprogramm OSQL.exe, welches in der Dos-Box ausgeführt wird. Geht das damit? Also so mit Create Database und so?
Wenn ja, was für ein Passwort muss ich denn da nehmen, um mit dem Programm überhaupt arbeiten zu können? Das Passwort, welches ich zum Einloggen nehme, wenn ich den PC hochfahre, funzt da nämlich nicht. Oder benötige ich noch ein anderes Dienstprogramm, mit dem ich Benutzer anlegen muss?
Und welchen Connection String muss ich in Delphi nehmen?

Bitte nicht böse sein, wenn die Fragen hier zu banal klingen, ich habe mich bisher noch nicht mit der MSDE beschäftigt.

Gruß

Gambit

Sharky 26. Okt 2003 10:22

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Zitat:

Zitat von Gambit
....Wenn ja, was für ein Passwort muss ich denn da nehmen, um mit dem Programm überhaupt arbeiten zu können? ....

Hai Gambit,

analog zum MS-SQL Server tippe ich darauf das bei der Installation der MSDE als Benutzer "sa" ohne Passwort erzeugt wurde.

Gambit 26. Okt 2003 10:27

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Nö, "sa" geht auch nicht...

Gambit

Sharky 26. Okt 2003 10:34

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Zitat:

Zitat von Gambit
Nö, "sa" geht auch nicht...

Hmmm,

nach allen Quellen die ich gefunden habe wird für den DB-Benutzer "sa" kein Passwort gesetzt.

Duffy 26. Okt 2003 11:03

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Hallo alle zusammen,
zu Information der MS SQL Server bietet die Authentifizierung basierend auf Windows Konten und einem SQL Server-Benutzernamen und - Kennwort an.

Dies muß bei der Installtion angegeben werden

- SQL Server und Windows
- Nur Windows

voreingestellt ist nur Windows

bye
Claus

Gambit 26. Okt 2003 11:35

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Wo gibt man das denn bei der Installation an? Ich konnte irgendwie gar nichts angeben, nicht mal ein Installationsverzeichnis...

Gambit

Duffy 26. Okt 2003 11:41

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Hallo Gambit,
bei der Installation des SQL Servers. Die Frage ist, hast Du einen Server?

Du hast die MS SQL Server Desktop Engine, mit der Du auf einen SQL server zugreifen kannst.

bye
Claus

Gambit 26. Okt 2003 11:44

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Hmm...ich werd dieses Doppelpost mal editieren...

Ich kann ja mal erläutern, um was es mir geht: Die Anwendung ist eigentlich ein WebModul, also eine Client-Server Anwendung. Wenn jemand im Internet die Seite aufruft kann er Daten aus einer Datenbank abrufen, bzw. es werden auch unter Umständen Daten geändert. Jetzt habe ich mir einen Server gemietet und will die Anwendung dort laufen lassen. Aber da kann ich doch keine Access Datenbank nehmen, oder? Da ist ja auch gar kein Access installiert. Ich hatte gedacht, mit dieser MSDE könnte ich auch Datenbanken erzeugen, auf die ich zugreifen kann. Irgendwie hab ich das Ganze Prinzip wohl noch nicht verstanden...

Gambit

Duffy 26. Okt 2003 11:47

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Hallo Gambit
??? s. o.
bye
Claus

Gambit 26. Okt 2003 12:06

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Hallo,

hab das Doppelposting oben mal editiert...

Gambit

Duffy 26. Okt 2003 12:22

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Hallo Gambit,
läuft denn auf dem gemieteten Server eine MS SQL Datenbank? Dann könntest Du diesen auch zu Entwicklung benutzen.

Bei der MSDE hast Du keinen Database Explorer dabei. Wenn Du also Datenbanken erzeugen willst, dann mußt Du daß per Programm machen. Also eine Verbindung über ADO erzeugen und dann die Datenbank mit SQL Statements erzeugen. Dann kannst Du auch damit arbeiten. Ist eben halt eine Trockenübung. Besser geht es, wenn Du einen Server und auch die Datenbanktools zur Verfügung hast.

bye
Claus

PS: Soweit wie ich mich erinnern kann, ist bei der MSDE ein Konfigurationstool dabei, womit Du die Verbindung (TCP/IP, Pipe etc.) einstellen kannst. Ich meine da wird auch der lokale Account eingerichtet.

Gambit 26. Okt 2003 12:44

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Also auf dem Server läuft wohl auch diese MSDE. Deswegen bin ich ja auch darauf gekommen...
Oder sollte ich vielleicht ne ganz andere Datenbank nehmen? Ich weiß nicht, ob ich da MySQL oder sowas installieren darf, hab das Teil erst 2 Tage...

Gambit

Duffy 26. Okt 2003 12:51

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Hallo Gmabit,
wenn Du von einer Website auf eine Datenbank zugreifen willst, dann benötigst Du auch einen Server. Damit meine ich eine Server Software wie den Interbase SQL Server, MS SQL Server oder auch MySQL. Das sind alles professionelle Datenbanken.

Du kannst natürlich auch eine Desktop Datenbank nehmen wie Access, Paradox oder DBase. Doch diese haben erhebliche Nachteile gegenüber den originären SQL Datenbank Servern. Du mußt wissen, was Du vorhast und was Du machen willst.

Auf jeden Fall würde ich Dir raten eine der 3 zuerst aufgeführten zu nehmen.

bye
Claus

Gambit 26. Okt 2003 13:17

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Ja so richtig verstehe ich das nicht, warum ich jetzt einen Server benötige. Das Webmodul liegt doch auf dem Server und die Datenbank auch. Wenn jetzt jemand die Webseite aufruft, nimmt das Programm, also das Webmodul Daten aus der Datenbank, die ja dort praktisch lokal vorliegt. Das Webmodul greift auf diese DB zu, nimmt Daten daraus und bastelt die Webseite zusammen und schickt sie an den Client zurück. So hatte ich mir das gedacht. Ich glaube langsam, ich bin zu blöd...

Gambit

Duffy 26. Okt 2003 13:50

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Hsllo Gambit,
was verstehst Du unter einer Datenbank?. Die Datei in der Daten stehen oder das gesamte System, was Daten verwaltet?

bye
Claus

Gambit 26. Okt 2003 13:57

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Hmm..., achso. Also die Datenbankdatei, in der die Daten stehen. Auf die Datei greift mein Webmodul zu. Ist also im Moment ne Access Datenbankdatei. Und da dachte ich, weil ja auf dem Server dieses MSDE löppt, nehm ich also in Zukunft ne MSDE Datenbankdatei. Weil ich ja ne Datenbank Engine benötige und auf dem Server ja kein Access installiert ist und damit auch nicht dessen Engine.

Ich weiß nicht, wie ich das besser erklären soll. Ginge wahrscheinlich fernmündlich besser...

Gambit

Duffy 26. Okt 2003 14:29

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Hallo Gambit,
langsam kommen wir in die richtige Richtung.

Es gibt unterschiedliche Arten auf eine Datenbank zuzugreifen. die Einfachste wäre, das Programm macht die Datenbank selber auf, liest und schreibt die Daten selber. Das Programm muß dann aber die Strukturen der Datenbank kennen und selber pflegen. All das wäre mit einem risiegen Programmieraufwand verbunden. Das wäre dann eine absolut Stand-Alone Datenbank.

Die zweite Möglichkeit ist, man bemüht ein anderes Programm um Daten von einer Datenbank zu erhalten. So braucht nicht mehr zu wissen wie die Daten selber gespeichert werden. Ein Beispiel dafür ist die BDE (Borland Database Engine). Hier erstellt man einen Alias, einen Stellvertreter für die Datenbank auf die man zugreifen will. Beim definieren des Aliases gibt man den Typ usw. an. dadurch weiß die BDE, wie sie auf Datenbank zugreifen soll. Sie benutzt dafür den richtigen Dolmetscher. Das Ganze sieht ungefähr so aus.

Programm -> BDE -> Datenbank und zurück Datenbank -> BDE -> Programm.

Das Programm braucht also garnicht zu wissen wie die Daten gespeichert werden. Das erledigt also ein sogenannter Datenbanktreiber sein. Ein nativer, also einer der direkt auf die Datenbank zugreift oder einer, der sich eines weiteren Treibers bedient. Z. B. ODBC. Man spricht hier auch von Dektop-Datenbanken. Diese liegen meist auf einem Rechner und werden auch auf diesem bearbeitet.

Die dritte Möglichkeit ist eine Datenbank die auch Anderen zur Verfügung steht. Man sendet an die Datenbank alle Anfragen und Aufgaben die man hat und das Datenbanksystem erledigt alle Aufgaben für alle die die Datenbank benutzen. Das war jetzt eine einfache Erklärung für Client-Server Datenbanken. Der Client gibt die Aufgaben und der Server führt sie aus. Damit man die Verbindung zur Datenbank nicht selber aufbauen muß gibt es sogenannte Provider. Diese hast Du auch schon für deine Access Datenbank benutzt. Die Provider bauen für Dich die Verbindung zu den Datenbanken auf.
Man muß sich also nicht mit TCP/IP auskennen um eine Datenbank auf einem anderen Rechner zu benutzen.

So, Du mußt jetzt anhand deines Einsatzzweckes selber entscheiden, was für Dich die beste Lösung ist. Vielleicht sei noch angemerkt, daß die SQL Datenbanken sicherer sind als andere. Das meine ich ich in Bezug auf Datenverlust.

ich hoffe Du weißt jetzt worum es geht.

bye
Claus

Gambit 26. Okt 2003 22:51

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Jau, so langsam, aber wirklich nur langsam wird mir das klarer. Hab mal meine Anwendung auf den Server geladen und - sie funzt auch da. Da ist dann wohl ADO der Dolmetscher. Access ist ja auf dem Server gar nicht installiert...

Aber wenn ich nun mehrere Domains auf dem Server installieren will, die alle auf die selbe Datenbank zugreifen sollen, dann brauch ich eine SQL-Server Datenbank? Oder ließe sich das dann immer noch mit der Access Datenbankdatei und ADO realisiern?

Gruß und nochmal Danke für die Mühe...

Gambit

Duffy 27. Okt 2003 07:13

Re: Frage zu MS SQL Server Desktop Engine(MSDE)
 
Hallo Gambit,
das kannst Du auch mit Access machen, da Access Multi-User fähig ist.
bye
Claus


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:00 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 by Thomas Breitkreuz