Hallo Leute,
ich bin als FileMaker Developer in Sachen SQL Newbie und habe hier meine Probleme. Servoy ist ein Frontend und greift auf ein Backend (SQL Datenbank) zurück.
Dieses Backend ist für mich Neuland. Ich frage als Newbie nun einfach einmal, was sich bestimmt auch andere FileMaker Entwickler denken.
hallo armin,
ich versuche deine fragen so detaliert wie möglich zu beantworten ...
- welche Datenbank (SQL) ist richtig? Postgres lt. Bruno (auch mein Favorit bzgl. der Lizenz) Sybase ist dabei, aber begrenzt
jede die eine JDBC schnittstelle anbietet, mit der Servoy arbeiten kann, wäre richtig. es gibt keine formel die sagt diese DB is besser als die andere - es ist mehr eine frage des projekts (verwendung) - und was das ganze kosten darf.
ich persönlich benutze postgres (
http://www.postgres.org ) - es ist sehr mächtig und "full" open source.
mysql ist prima für kleinere projekte, die lizenzpolitik ist anders als bei postgres. du darfst mysql kostenlos benutzen wenn deine software ebenfals unter GPL steht. oder, du lieferst deinem kunden nur die applikation und er installiert mysql selbst ;-).
andere freie alternative wären auch HSQLDB (
http://de.wikipedia.org/wiki/HSQLDB.org) oder firebird (
http://de.wikipedia.org/wiki/Firebird_%28Datenbank%29).
- aus was besteht ein SQL Datenbank? Nur die tables oder ist da noch mehr?
das was wir unter SQL-DB verstehen ist meistens immer mehr als nur eine tabellensammlung - nämlich ein DBMS (datenbankmanagementsystem)
plus die eingentliche datentabellen (Datenbank) -
http://de.wikipedia.org/wiki/DBMS .
ausserdem findet man auch jede menge gute verwaltungtools die nicht softwarespezifisch sind (z.b.
http://www.dbvis.com).
- wie wird eine SQL Datenbank installiert? Gibt es Installer auf MacOSX/Windoof
ja, fast alle DBs kann mann mit doppelklick installieren. einige bieten auch eine umfangreiche konfiguration der einstellungen bei der installation an.
die mysql Mac OS X version findesd du unter
http://dev.mysql.com/downloads/mysql/4.1.html (Mac OS X (package format) downloads, standard version)
- eine sehr gute installationsanleitung findest du hier:
http://www.entropy.ch/software/MacOSx/mysql/für postgres die beste möglichkeit ist es als source herunterzuladen und dann selbst zu kompilieren - hier
http://developer.apple.com/internet/opensource/postgres.html ist
alles sehr schön dokumentiert.
oder, du nimmst die vorkompilierte version von marc liyanage (
http://www.entropy.ch/software/macosx/postgresql/ )
- wie wird eine SQL Datenbank erstellt, gepflegt?
am besten mit einem management tool - die werden meistens mit von dem DB hersteller ausgeliefert.
z.b bei sybase kannst es mit dem command prompt tool dbinit machen: dbinit neuedatenbank.db
mysql macht es aus dem mysql client mit: create database neuedatenbank;
postgres macht es auch mit create database: CREATE DATABASE neuedatenbank WITH OWNER=benutzer ENCODING='UTF8' TABLESPACE=tblespace CONNECTION LIMIT=50
natürlich hat jeder hersteller auch entsprechende GUI tools mit wizards die das ganze einfacher gestallten.
- wie wird eine SQL Datenbank gesichert? BUP?
ja, man macht am besten ein dump der datenbank.
bei mysql kannst einfach das verzeichnis mit tabellen-dateien speichern, oder mittels einer BUP applikation / eines skripts.
die kann ich dir gerne für mysql und postgres zur verfügung stellen, die werden dann automatisch / regelmäsig (cron-job) in hintergrund gestartet.
- wo (Verzeichnis) wird eine SQL Datenbank gespeichert?
in ein sogenanntes data verzeichnis. mysql unter Mac OS X macht es unter /usr/local/mysql/data/, beim linux /var/lib/mysql. postgres unter /usr/local/pgsql/data.
windows systeme speichern es meistens in einem data verzeichnis unter dem die applikation läuft (c:/programme/mysql/data) - wenn bei der installaton nicht anders definiert war.
- gibt es Tools für die Pflege, Erstellung und Sicherung einer SQL Datenbank?
aber reichlich. ich persönlich benutze DbVisualizer, den gibt es als freie oder registrierte version (registrierte kann ein paar sachen mehr), und ist platformunabhängig (java).
es gibt auch DB spezifische tools (
http://www.mysql.com/products/tools/administrator/,
http://www.mysql.com/products/tools/query-browser/,
http://www.pgadmin.org)
ich präferiere ein tool mit dem (fast) alles gemacht werden kann - so muss ich mich nicht lange mit der funktionalität der applikation "quälen", die lernkurve ist dann auch entsprechend schnell.
Ich hoffe meine Fragen sind nicht zu low level für euch.
Grüße
Armin
hoffe die antworten waren ausführlich genug - wenn nicht, bitte nachbohren ;-)