www.mikrocontroller.net

Forum: PC-Programmierung Datenbanken! Welche?

Autor: markus (Gast)
Datum: 01.07.2008 09:55

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 Buchegger (kbuchegg) (Moderator)
Datum: 01.07.2008 09:59

> 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: Ernst Bachmann (ernst)
Datum: 01.07.2008 10:08

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: 01.07.2008 10:17

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: 01.07.2008 10:25

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: 01.07.2008 10:26

> 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: 01.07.2008 10:31

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 t. Firefly (rufus) (Moderator)
Datum: 01.07.2008 10:44

> 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: 01.07.2008 18:46

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 Pauli (haku) Benutzerseite
Datum: 01.07.2008 18:57

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: 02.07.2008 02:42

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: 02.07.2008 02:44

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: 02.07.2008 11:00

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: 02.07.2008 11:39

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: 02.07.2008 12:52

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: 02.07.2008 13:13

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 Email-Adresse ist freiwillig. Wenn Sie automatisch per Email über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Suchfunktion und Betreffsuche benutzen - vielleicht gibt es schon einen ähnlichen Beitrag
  • Aussagekräftigen Betreff wählen
  • Im Betreff angeben um welchen Controllertyp es geht (AVR, PIC, ...)
  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang
  • JPEG-Dateien (.jpg) nur für Fotos und Scans verwenden
  • Schaltpläne, Screenshots usw. als PNG oder GIF anhängen

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [pre]vorformatierter Text (z.B. Code in anderen Sprachen)[/pre]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel






webmaster@mikrocontroller.netImpressumWerbung auf Mikrocontroller.net