Forum: PC-Programmierung Datenbankanwendung - womit realisieren?


von Manager (Gast)


Lesenswert?

Über die Frage werden sich viele freuen, weil sie so schön allgemein ist 
:-)

Ich möchte ein ERP/CRM/EDM System (auf meine Bedürfnisse zugeschnitten) 
realisieren, habe bislang aber nur mal mit MySQL und PHP gearbeitet.

Natürlich muss die Lösung sofort alles kostenlos können :-)

Ein Mittel ist wohl MS Access (€ 190), ich stelle mir vor, dass man dort 
die Datenbank und Masken zusammenklickt und gut ist(?).
http://de.wikipedia.org/wiki/Microsoft_Access
http://office.microsoft.com/de-de/access/features-und-vorteile-von-access-2010-HA101809011.aspx

Als "offene" Alternative Base aus der OpenOfficeOrg suite,
http://de.wikipedia.org/wiki/OpenOffice.org#Base
aber ich muss sichergehen, dass das Projekt nicht an Kinderkrankheiten 
des "Frameworks" scheitert.

Noch eine Möglichkeit, aber wohl die aufwändigste: Web-Framework + 
Datenbank. Dafür nur ein Programm zu warten (Datenbank ist eh zentral), 
Netzwerkfähigkeit integral, und auch Extrawünsche realisierbar, da 
sowieso "from scratch".

Über Tipps (auch Literatur) freue ich mich.

von Purzel H. (hacky)


Lesenswert?

Access ? Eher nicht. MySQL ist eher passend. Das Ganze gibt's aber 
schon. Schau mal bei http://www.e107.org rein. Dh kann sofort alles und 
kostet nix.

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Wenn du wirklich nicht mit einer der vielen fertigen Lösungen 
klarkommst, dann auf jeden Fall Access, das ist das einzige womit du 
eine Chance hast etwas funktionierendes mit vertretbarem Aufwand 
hinzubekommen. Base kannst du vergessen, das ist unbrauchbar.

von Manager (Gast)


Lesenswert?

kein WCMS für Texte und Bilder und News und Newsfeeds und Like-Buttons 
und User-Profile und Avatare und Event-Kalender ...

von Chris (Gast)


Lesenswert?

Schau dir mal Liferay an.

von Frank (Gast)


Lesenswert?

Wenn du dich bei der DB auf das Wesentliche ("common sql") beschränkst 
und auf Prozeduren und Trigger verzichtest bzw. diese Funktionen in der 
App erledigst, kannst du beinahe jede SQL-DB nehmen bzw. ausprobieren, 
z.N.

- MySQL
- PostgreSQL
- Ozelot
- Sqlite
- MaxDB
- Firebird
- Ingres
- MonetDB
- SimpleSQL ...

Ich würde mich da soweit wie möglich unabhängig halten.

Frank

von (prx) A. K. (prx)


Lesenswert?

Wobei das andererseits dazu führen kann, schnelle optimierte 
Datenbankmethoden durch langsamere selbstprogrammierte 
Anwendungsmethoden mit hohem Datenumsatz zu ersetzen. Bei hohem 
Datenvolumen kann das zum Problem werden.

von someone (Gast)


Lesenswert?

python und sqlite und wenns grafisch sein darf noch mit wxpython oder 
pyqt.

von Peter (Gast)


Lesenswert?

wenn es eh unter windows laufen soll, dann nimm den SQL-Server Express. 
Die datenbank bietet mehr als mysql und ist auch kostenlos.

von (prx) A. K. (prx)


Lesenswert?

Zumindest für den Entwickler kostenlos. Ob er es auch im Einsatz ist 
kommt wieder drauf an wieviele Daten drin landen sollen. Der Express ist 
da etwas limitiert. Wenn schon klar ist, dass man beim Tablespace über 
kurz oder lang jenseits von 1GB landen könnte, dann wird das zum 
Problem. Grad der Begriff CRM macht mich da mistrauisch, das sind 
tendentiell nach oben offene Datengräber.

von Peter (Gast)


Lesenswert?

A. K. schrieb:
> Der Express ist
> da etwas limitiert. Wenn schon klar ist, dass man über kurz oder lang
> jenseits von 1GB landen könnte, dann wird das zum Problem.
nein wird es nicht, sie ist auf 10GB begrenzt. Das sollte bis zum 
erscheinen der nächsten version mit vermutich einem höheren Limit 
ausreichen.

von (prx) A. K. (prx)


Lesenswert?

Ok, ich hatte noch die ältere Version mit 4GB in Erinnerung. Aber dran 
denken, dass der die Logfiles dabei mitzählt (jedenfalls der alte).

Jedenfalls kämpfe ich ab und zu in eigentlich garnicht mal grosser 
Umgebung mit einem CRM Sytem mit über 400GB und 100GB Wachstum pro Jahr 
ohne absehbarem Ende. Mit Jobs für die die Nacht zu kurz wird. Und 
Leuten, die für ihre Auswertungen mit Vorliebe full tablescans 
verwenden. Und Enwicklern, denen das ein bischen über den Kopf wuchs.

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Wer Base und Access in Erwägung zieht, der braucht weder MS SQL Server 
noch mehrere GB Speicherplatz...

SQL-Server sind geschenkt, das Problem ist das Frontend. Und da ist 
Access für eine Individuallösung wirklich die einzige sinnvolle Wahl.

von Manager (Gast)


Lesenswert?

Holla, ihr scheint euch ja mit dem Thema auszukennen. Wie Andreas 
richtig schreibt, mein vorerst wichtigstes Problem ist das Frontend. 
Viele Daten werden es nicht, es sei denn, man würde auf ein Dateisystem 
verzichten und stattdessen alles in die Datenbank packen - aber selbst 
dann geht es nur um ein paar GB.
Die fertige ERP Systeme, die ich mir bislang angesehen habe, sind 
anscheinend überwiegend für den Handel ausgelegt, ich möchte auch 
Baugruppen/Stücklisten in der db Abbilden. Da wird's dann schon wieder 
schwierig, weil die Struktur vom CAD System festgelegt wird, und der 
Datenbankinhalt nur die CAD Daten widerspiegelt. Dann Varianten und 
verschiedene Versionen von Teilen oder der Baugruppe.. (EDM)

Mit CRM meine ich ein besseres Adressbuch mit der Möglichkeit, 
Gesprächsnotizen und Verknüpfungen zu Projekten/Tickets/E-Mails/Dateien 
etc. zu erstellen, so dass man mit ein paar Klicks auf dem aktuellen 
Stand ist. Schlagwort ist hier "collaboration". Dazu wäre die 
Integration von E-Mail nützlich : Herr Maier, letzter Kontakt wg. 
Projekt X durch Fr. Knecht per E-Mail am x.x.x (vorgestern).

Dann kommen wiederum Rechte hinzu, nicht unbedingt alles soll von allen 
gesehen werden können..

Ein Wikisystem ist nicht schlecht, um Notizen und Dokumente, die im 
klassischen Dateisystem in irgendwelchen Unterordnern verstauben, zu 
organisieren und zu verknüpfen (mit Versionierung, Tags, Suche) aber die 
Integration von datenbankgeeigneten Daten ist nicht vorgesehen. (Die 
Formatierung, insbes. von Tabellen, ist leider auch etwas fummelig).

Als webbasierte Lösung ohne Ärger mit der Serverwartung bieten sich 
Cloud-Services wie Google docs an, dafür gibt es auch zahlreiche 
zusätzliche Anwendungen, die dann mit den docs Informationen verknüpft 
werden können (Google App Engine). Datenbank gibt es auch 
(http://code.google.com/intl/de-DE/appengine/docs/python/gettingstarted/usingdatastore.html)
Aber google is evil und lokale Daten sind sympathischer.

Wie man sieht, es gibt noch keinen richtigen Plan, außer, die Firma 
besser zu automatisieren. Ich werde mal ein bisschen mit Access spielen, 
das schadet sicher nicht.

von Karl H. (kbuchegg)


Lesenswert?

Manager schrieb:

> Wie man sieht, es gibt noch keinen richtigen Plan, außer, die Firma
> besser zu automatisieren.

Such dir jemanden der damit Erfahrung hat.
Wenn du noch nie mit Datenbanken gearbeitet hast und erst mal alles von 
der Pieke auf lernen musst, dann ist das was du vorhast ein sicherere 
Garant, dass deine Firma wegen Informationsmangel bald pleite sein wird.

Auch wenn man sich in Access die Dinge zusammenklicken kann, kommt man 
nicht umhin die Grundlagen zu lernen, wie man Datenbanken aufbaut. Da 
führt kein Weg drann vorbei.

Das ist genauso, wie du als Laie nicht selbst höchstpersönlich die 
jährliche Wartung deiner Firmenfahrzeuge machen wirst, sondern das Ganze 
der Werkstatt deines Vertrauens überlässt.  Denn die haben das gelernt.

Seine CD-Sammlung mit Access zu verwalten ist eine Sache. Aber eine 
Firma damit am Laufen zu halten ist eine andere Sache.

von Stefan W. (swesch)


Lesenswert?

Hallo!

Wir standen vor ca. 8 Jahren in der Firma vor einem ähnlichen Problem.
Wir hatten zwar schon 3-4 Anwendungen unter Access, aber die waren 
instabil geworden und sind öfters ausgestiegen.

Wir hatten dann mal eine kleine Applikation als Weblösung umgesetzt aber 
das wars leider nicht.

Wir sind dann nach intensiver Recherche bei Sybase PowerBuilder 
gelandet.
http://www.sybase.com/powerbuilder12

Damit erstellen wir das FrontEnd und Du musst dem Projekt nur eine 
Datenbank bekanntmachen. (welche auch immer)

Der PowerBuilder hat von früher her eine eigene PFC (Powerbuilder 
Foundation Classes), entwickelt sich aber in den letzten Jahren in 
Richtung .NET

Vielleicht hilfts Dir bei der Entscheidungsfindung

Gruß
Stefan

von Stefan B. (steckersammler)


Lesenswert?

Von Access kann ich auch nur abraten.
Ich betreue in der Arbeit auch ein paar Access-Applikationen, die ich am 
liebsten einstampfen oder migrieren würde.
Aber die meisten können halt nur Access (zumindest den Klicki-Bunti-Teil 
ein bisschen), und wollen selber dran rumspielen können (auch wenn sie 
dabei meistens mehr kaputtmachen als verbessern)... hrmpf

Die Performance im Netzwerk ist einfach miserabel, und wenn auch noch 
zwei Anwender gleichzeitg drauf zugreifen, oh je...
Ein kleiner Vergleich: Eine kleine Auswerte-Applikation braucht auf 
meinem (älteren) Firmen-Laptop ca. 5 Minuten, wenn die DB lokal liegt.
Liegt die selbe DB 1:1 auf einem Netzlaufwerk, sind es auf einmal 30 bis 
40 Minuten!
Die Daten "tröpfeln" nur vom LAN zu meinem Laptop, obwohl die Bandbreite 
weit mehr hregeben würde...

Access ist eben was für "ich strick mir mal schnell ne kleine Auswertung 
nur für mich"-Aufgaben, und mehr nicht.

Also nimm lieber PostgreSQL, Oracle oder MS SQL, wenn du Multi-User 
Zugriffe planst, und was eigenes entwickeln willst.
Ob die Eigenentwicklung sinnvoll für dich zu schaffen ist, musst du 
selber abschätzen können...

MfG Stefan

von Manager (Gast)


Lesenswert?

Access 2010 nervt schon
 - nur selten aussagekräfige Tooltips
 - Der Datentyp Date/Time ist anscheinend nur Date
 - CTRL+A in einer Zelle wählt ALLE Zellen
 - Default Value [Now()] für eine Column wird einem bestehenden Eintrag 
nicht zugeordnet
 - wieso eine 2007 Datenbank mit Access 2010?
 - keine Programminfo (About gibt es nicht)
   - ah doch, unter *File*>Help
   - "Product Activation Required" obwohl "this product has already been
      activated"
 - keine Size info unter Control Panel > Programs > Programs and 
Features (ist ihnen wohl peinlich)

So, deinstalliert. Die Datenbank mach ich ja mit HEIDISql schneller als 
mit dem Ding.

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Stefan B. schrieb:
> Liegt die selbe DB 1:1 auf einem Netzlaufwerk, sind es auf einmal 30 bis
> 40 Minuten!

Na sowas macht man ja auch nicht, dafür gibt's SQL-Server auf die man 
mit Access per ODBC zugreifen kann.

von Stefan B. (steckersammler)


Lesenswert?

Natürlich macht man sowas nicht.
War auch nur als Anhaltspunkt zur "Performance" von Access gedacht... ;)

Und da der TO ja die Idee hatte eine Multi-User Umgebung vielleicht mit 
Access zusammenzuklicken, schien mir so ein abschreckendes Beispiel 
recht anschaulich.

MfG Stefan

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Stefan B. schrieb:
> Natürlich macht man sowas nicht.
> War auch nur als Anhaltspunkt zur "Performance" von Access gedacht... ;)

Das hat weniger mit Access selbst zu tun, als damit dass Netzlaufwerke 
für diese Art von Zugriffen nicht geeignet sind.

> Und da der TO ja die Idee hatte eine Multi-User Umgebung vielleicht mit
> Access zusammenzuklicken, schien mir so ein abschreckendes Beispiel
> recht anschaulich.

Kann man mit Access problemlos zusammenklicken, solange die eigentlichen 
Daten auf einem SQL-Server liegen.

von Klaus (Gast)


Lesenswert?

Ein wenig OT.

Was ich hier so lese, erzeugt in mir ja ein grenzenloses Vertrauen in 
die Ökonomen.

> Kann man mit Access problemlos zusammenklicken, ...

Macht man in der Wirtschaft das so? Klicken statt denken?

Als Klickergebniss verlagert man eine Fabrik nach Absurdistan und stützt 
Pleitistan mit Milliarden von Steuergeldern, weil ein Tooltip 
"alternativlos" angezeigt hat.

MfG Klaus

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Klaus schrieb:
> Ein wenig OT.

Nein, komplett OT.

von Klaus (Gast)


Lesenswert?

> Klaus schrieb:
>> Ein wenig OT.

> Nein, komplett OT.

Du hast recht. Ist schon ziemlich spät.

MfG Klaus

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.