mikrocontroller.net

Forum: PC-Programmierung Datenbanken! Welche?


Autor: markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

für meine Hochschule muss ich eine Datenbank einführen. Dabei sollen 
alle Bauteile hinterlegt werden, die wir im Layoutsystem haben.
Welche Datenbank könnt Ihr mir empfehlen Oracel, Access usw. Welche 
datenbanken ist die beste?

Ich habe was von Datenbanken übers Internet gelesen. Sprich man kann die 
Datenbank im Internet pflegen und dann auf Sie zugreifen!

Könnt Ihr mir was empfehlen!?

Gruß markus

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Welche datenbanken ist die beste?

Solche Fragen nach 'dem Besten' führen praktisch immer zu
einem Glaubenskrieg. 'Das Beste' gibt es in der EDV nicht,
bzw. 'Das Beste' ist praktisch immer das Teil mit dem du
umgehen kannst.

> Ich habe was von Datenbanken übers Internet gelesen. Sprich
> man kann die Datenbank im Internet pflegen und dann auf Sie
> zugreifen!

Ich bin altmodisch. Bei mir muss ein Programm auch dann laufen,
wenn ich mit meinem Laptop im Dschungel sitze und der nächste
Internet Anschluss 200 Meilen entfernt ist.
'Ich bin ein Programmierer, holt mich hier raus!'

Autor: Εrnst B✶ (ernst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kommt darauf an, was ihr lernen sollt.

Oracle ist IMHO komplett oversized, macht sich aber ggfs im Lebenslauf 
gut... ("Projektarbeit mit Oracle"... braucht ja keiner wissen, dass es 
nur eine mini-db war)

Ansonsten gibts natürlich freie Alternativen, wie z.B. Firebird (ehemals 
Borland Interbase), Postgresql, Mysql, sqllite usw... (Gibts alle für 
Linux und Windows)

Wenn ihr eher Microsoft-Fixiert seid, den Microsoft SQL Server.

Zum Webzugriff dann Apache+PHP/Perl/Ruby/Python/xxx oder MS IIS + 
ASP.NET.

Evtl ist eure Hochschule auch (wie so viele) auf dem Java-Trip, dann 
JSP.

Autor: Simon S. (herrbert)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also Access auf keinen Fall (bzw. höchstens als Oberfläche). Ich würde 
die üblichen Kandidaten vorschlagen:
-Postgres
-mysql

Die Aufgabe hört sich auch nicht danach an als ob es wirklich wichtig 
wäre welche Datenbank ihr benutzt (Datenmenge scheint ehr gering zu 
sein).

So gut wie jede Datenbank ist Netzwerkfähig. Aber reicht da nicht das 
HS-Netz? Wenn die DB mehr als einen Benutzer hat ist das sowieso zu 
empfehlen.

Autor: max (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
Mit deinen Angaben kann man keine klare Aussage machen, welches 
Datenkbanksystem ihr benutzen sollt.
Wie grosse Datenmengen?
Wie viele Anfragen/sek?
Multiuser Betrieb?

Deiner Beschreibung nach hört es sich nach etwas kleinerem an. Wenn 
jeweils nur ein einzelner Benutzer auf die Datenbank zugreift, rate ich 
zu sqllite.
Es ist schnell und braucht keinen Server.

Autor: Bartli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Also Access auf keinen Fall (bzw. höchstens als Oberfläche)

Was heisst "höchstens als Oberfläche"? Kannst du Access beibringen, z.B. 
auf eine Postgres DB zuzugreifen?

Autor: yalu (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum soll eine Datenbank eingeführt werden? Wahrscheinlich, um die
Bauteilebibliothek zentral zu lagern und konfliktfreien Zugriff
von mehreren Rechnern zu ermöglichen. Gibt es noch andere Gründe?

Bei der Auswahl würde ich beim Layoutsystem anfangen. Gibt es DBMSe,
die direkt unterstützt werden? Etwas, was vom Hersteller gestestet
wurde und supportet wird und wo es Referenzinstallationen gibt,
funktioniert meist besser als irgendetwas selbst zusammengebasteltes.

Wenn mehrere Kandidaten übrig bleiben oder kein DBMS speziell
unterstützt wird, würde ich in der Preisskala unten anfangen und
langsam nach oben klettern.

Am unteren Ende der Skala liegen die freien Systeme, deren
bekanntester Vertreter MySQL ist. Das ist recht mächtig und ist so
verbreitet, dass auch der Gratis-"Support" über User-Foren u. ä. kein
Problem sein dürfte.

Access kostet euch wahrscheinlich effektiv auch nichts, weil es sicher
durch irgendwelche Softwareverträge abgedeckt ist. Ich wüsste aber
nicht, was Access könnte, was bspw. MySQL nicht kann. In der
MS-Produktpalette hat Access wohl eher Kinder und Hobbyisten als
Zielgruppe, da es natürlich nicht in Konkurrenz zum MS-SQL-Server
treten soll. Wie schon geschrieben wurde, kann man Access als
User-Interface für andere DBMSe, bspw. auch MySQL einsetzen.

Oracle kann auch nicht sooo viel mehr als MySQL. Irgendwo im Internet
gab es mal eine Vergleichsliste zwischen Oracle, SQL-Server und MySQL,
ich weiß aber nicht mehr, wo. Es zeigt seine Stärken wahrscheinlich
erst so richtig bei riesigen Datenbanken mit sehr hoher
Zugriffsfrequenz. Eure Datenbank wird weder riesig noch stark
frequentiert werden.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Kannst du Access beibringen, z.B. auf eine Postgres DB zuzugreifen?

Wenn es für Postgres einen ODBC-Treiber gibt, dann sollte das gehen.

Autor: Mehmet Kendi (mkmk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
yalu wrote:
> Am unteren Ende der Skala liegen die freien Systeme, deren
> bekanntester Vertreter MySQL ist.

Hab' ich auch mal gemeint. Aber MySQL ist nur unter ganz bestimmten 
Bedingungen "frei".
Seitdem setze ich Firebird ein und bin sehr zufrieden damit.

Autor: Sven P. (haku) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Am schönsten ist ne DB doch, wenn der Programmierer seine SQL-Abfragen 
so wählt, dass es letztlich egal ist, ob da nun MySQL, Oracle, 
PostgreSQL, SQL-Server oder sonstwas dahintersteckt. Wozu gibbet den 
ANSI? grins

Autor: yalu (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mehmet Kendi:
> Aber MySQL ist nur unter ganz bestimmten Bedingungen "frei".

Das ist jetzt wieder eine Frage der Definition von "frei". Jedenfalls
kann MySQL unter der GPL lizensiert werden, dann hat man gegenüber der
Zahlversion keinen Support des Herstellers und eben die durch die GPL
gegebenen Einschränkungen, die man bei jeder GPL-Software (z.B. auch
GCC) hat. Für einen reinen Anwender der Softwarede dürften diese
Einschränkungen aber praktisch keine Rolle spielen.

Autor: Simon S. (herrbert)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bartli wrote:
>> Also Access auf keinen Fall (bzw. höchstens als Oberfläche)
>
> Was heisst "höchstens als Oberfläche"? Kannst du Access beibringen, z.B.
> auf eine Postgres DB zuzugreifen?

Jop zumindest für MSSQL. Aber IMHO geht das auch für alle anderen SQL 
DBs - allerdings wahrscheinlich mit eingeschränkter funktionalität.

Autor: Daniel F. (df311)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Simon S. wrote:
> Bartli wrote:
>>> Also Access auf keinen Fall (bzw. höchstens als Oberfläche)
>>
>> Was heisst "höchstens als Oberfläche"? Kannst du Access beibringen, z.B.
>> auf eine Postgres DB zuzugreifen?
>
> Jop zumindest für MSSQL. Aber IMHO geht das auch für alle anderen SQL
> DBs - allerdings wahrscheinlich mit eingeschränkter funktionalität.

postgres habe ich noch nie probiert, aber mit mysql funktionierts auf 
jeden fall. und soweit ich das feststellen konnte ohne 
einschränkungen...

Autor: Bartli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber gibts da nicht ein paar mühsame syntaktische Unterschiede zwischen 
Jet SQL und anderen SQL-Dialekten (unter anderem mit Quoting, meine ich 
mich zu erinnern). Wo werden denn die aussortiert?

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bartli wrote:
> Aber gibts da nicht ein paar mühsame syntaktische Unterschiede zwischen
> Jet SQL und anderen SQL-Dialekten (unter anderem mit Quoting, meine ich
> mich zu erinnern). Wo werden denn die aussortiert?

Innerhalb von Access sprichst du glaube ich sowieso nur das "Access-SQL" 
;) Die eigentliche Übersetzung erfolgt im Datenbank-Provider. Also 
gewissermaßen ein Treiber, der die MySQL (oder was auch immer) Datenbank 
ansteuert.

Autor: Flocki (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn eure bevorzugte Sprache Java ist, dann wäre auch eine native 
Java-(R)DBMS eine gute Möglichkeit. G**gle mal nach HSQLDB, oder schau 
dir an was von Sun als JavaDB verteilt wird.

Zu Oracle würde ich aus Kostengründen nicht raten, es sei denn eure 
Hochschule hat bereits Lizenz(en) oder Bildungseinrichtungen bekommen 
Rabatte. Oracles Stärken liegen nach meiner Meinung in Bereichen 
(Management, Backup, StoredProcedures), die Ihr bei eurem System 
vermutlich nicht Bedenken müsst.

Für max. 5 gleichzeitige Nutzer bietet MS glaub ich immer noch eine 
kleine Version (SQL Server Express?) des SQL Server kostenlos an.

Ansonsten kann ich den Vorrednern bei MySQL oder Postgres zustimmen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.