Hallo an alle,
durch eine andere Diskussion [
dp]
SQL Server 2005 Express: Forum gesucht[/
dp] bin ich ziemlich verunsichert. Ich möchte dieses Thema unter anderer Überschrift neu beginnen.
Welche Kombination von Compiler, SQL-DB und Zugriffsverfahren ist für meine Situation (Vorkenntnisse, Zielgruppe, Programmierumgebung, Lernaufwand...) möglichst gut geeignet?
Dazu will ich zunächst meine
Vorüberlegungen erklären:
* In der Vergangenheit hatte ich Delphi (bis D5 Pro), dazu die
BDE verwendet.
* Zur Weiterentwicklung habe ich Interbase 'studiert'. Die von mir benötigten Datenbanken (Intern 5 MB, Postdaten u.ä. 100 MB, Anwenderdaten 10..100 MB) sind inzwischen fertig.
* Ich bin Einzelkämpfer und habe - abgesehen von den Foren - keinen Kontakt mit anderen Programmierern.
* Aus dem gleichen Grund kann ich mich nicht gleichzeitig mit NET, einer neuen Programmiersprache, einer neuen
IDE, mehreren
DBMS und
SQL-Dialekten befassen, sondern muss rationell vorgehen und sollte auch getroffene Entscheidungen nur umstoßen, wenn es wirklich notwendig ist.
* Meine Englisch-Kenntnisse sind mangels praktischer Erfahrung beschränkt. Ich kann es zwar mehr als ausreichend lesen, aber es geht deutlich langsamer, und bei vielen Satzkonstruktionen und Begriffen habe ich Verständnisprobleme. Deshalb bevorzuge ich Programme und Literatur in Deutsch.
* Ich lebe wesentlich von Hartz IV und habe nur selten Geld für Investitionen.
* Meine (noch vorhandenen und potenziellen) Kunden arbeiten professionell mit meinem Programm (bisher noch unter DOS), haben aber ebenfalls wenig Geld. Außerdem verfügen sie ausschließlich über Anwenderkenntnisse.
* Meine Zielgruppe benutzt zwischen 1 und 10 PCs, mit und ohne Server. Theoretisch genügt für deren Bedürfnisse die
BDE, aber natürlich muss ich auf
SQL-Datenbanken wechseln.
Auslöser für Gedanken zum Wechsel waren die Probleme mit Delphi 2005, die Zukunft von Borland/DevCo usw., die Zusammenarbeit zwischen Delphi und NET und dergleichen. Dadurch entwickelten sich
folgende Entscheidungen:
* Zu einem Borland-Compiler passt eine Borland-Datenbank. Also: Interbase.
* NET scheint zukunftssicher zu sein (zumindest wegen der Vorrangstellung von MS) und erleichtert vieles. Also: NET.
* In der Vergangenheit hatte ich Infopower (Woll2Woll) und Rx-Tools verwendet (ich weiß, dass
Jedi der Nachfolger ist). Aber bei jeder neuen Delphi-Version neue Tools kaufen bzw. installieren, anpassen und umstellen ist zumindest lästig; und wie sieht es in der Zukunft aus? Deshalb vorzugsweise mit Bordmitteln arbeiten.
* Ein neues Programm unter NET? Dann nicht
VCL, sondern
FCL.
* Ein neues Programm jetzt? Dann am besten gleich
NET 2.0 (also entfällt Delphi).
* Borland-Zukunft? Also nicht mit Delphi programmieren, sondern mit
C#. Dann kann ich vorerst dieselbe
IDE benutzen und habe später (fast) keine Umstellungsprobleme, wenn ich einen anderen Compiler verwende. (#D scheint eine sinnvolle Alternative zu sein, aber alles gleichzeitig prüfen...)
* Unter Borland-C# habe ich Borland Data Provider als Datenbankzugriff für Interbase. Also was verwenden?
* Meiner Zielgruppe (s.o.) muss ich eine Datenbank vorschlagen (vorerst: vorschreiben). Dazu brauche ich eine sichere
DB, die (möglichst preiswert) problemlos zu installieren ist und bei Bedarf ausgeweitet werden kann.
* Bei
MSSQL kann ich aus einer
DB (Anwenderdaten) auf eine andere (Postdaten) zugreifen, bei
IB nicht. (Diese Funktion ist für mein Programm sehr hilfreich.)
Die drei letzten Punkte brachten mich zu meiner Bevorzugung von
MSSQL. Open Source (Firebird) gefällt mir zwar gut, aber ich traue der Entwicklung für kommerzielle Bedürfnisse nicht so ganz. Außerdem läuft die
Zusammenarbeit zwischen C#, NET und Datenbank über System.Data.SqlClient vermutlich am besten.
Ich hoffe, ich habe meine Beweggründe ausreichend dargestellt.
Ich habe hier in der
DP in den letzten sechs Wochen eine ganze Menge Hinweise auf sinnvolle Alternativen und Ergänzungen gelesen. Natürlich können Tools, andere
DBMS usw. besser geeignet sein. Aber irgendwann einmal muss ich doch entwickeln und nicht nur nachdenken, was es sonst noch alles gibt. Zusätzlich kämen mir Hinweise auf entsprechende Foren für die weitere Arbeit sehr gelegen.
Könnt Ihr mir unter diesen Umständen bei meinen Entscheidungen helfen? Danke! Jürgen