Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

CS - interne Datenbank

Frage Entwicklung C und C++

Mitglied: dtzzzzzz

dtzzzzzz (Level 1) - Jetzt verbinden

26.09.2008, aktualisiert 30.09.2008, 5153 Aufrufe, 7 Kommentare

Hallo Leute,

es geht hier um die Programmiersprache C#, da ich keinen Bereich dafür gefunden habe, wo ich das sonst posten könnte. Da ich grade diese Sprache neu erlerne, würde mich interessieren, wie man die Daten für ein Tool am effektivsten abspeichert, die für so ein Tool nötig sind.

Als Beispiel: PHP hat eine MySQL- DB, wo die Daten für eventuelle Berechnungen vorliegen. Diese werden dann z. B. per I-Net geholt, verarbeitet und wieder abgespeichert. Ich möchte allerdings ein Tool bauen, das ausschliesslich (oder zumindest fast) nur offline genutzt werden kann. Allerdings sollen viele Daten für eine Berechnung dabei genutzt werden, die natürlich dann mit diesem Tool irgendwie mitgespeichert werden müssen bzw. mitinstalliert werden müssen.

Eine *.txt Datei dafür zu nutzen, scheint für mich nicht das richtige. Drin würde z. B. dann so was stehen: Peter,123587,53506l.53,2342349,Musterstadt
Silke,569646,234292.21,4325345,Musterstadt2

usw.

Da die Daten aber im Prinzip sehr zahlreich sind, wäre meine Frage, ob eine interne Datenbank für solche Zwecke in C# existiert, wo man diese Daten speichert und die vorallem mit dem Tool nach der Veröffentlichung mit installiert werden.

Danke für die Hilfe im Voraus.
Mitglied: 16568
26.09.2008 um 15:27 Uhr
Wie wärs ebenfalls mit MySQL, oder MSSQL, oder Oracle, oder DB2, oder Access, oder Foxpro, oder Firebird, oder, oder, oder...


Lonesome Walker
Bitte warten ..
Mitglied: dtzzzzzz
26.09.2008 um 15:50 Uhr
Ja, aber geht das einfach so, dass so eine DB wie z. B. MySQL auch gleich bei der Installation auf einem Rechner mitinstalliert wird, wenn man so ein Tool nutzen möchte? Angenommen, dass der Anwender diese DB vorher auf seinem PC nicht hat.
Bitte warten ..
Mitglied: kaiand1
26.09.2008 um 16:02 Uhr
Nimm zb Portable Mysql und setzt den auf nen anderen Port.
Da zb bei manche ne Datenbank laufen haben und evtl deinen Programm keinen Zugriff drauf gegen werden
Oder wenn du eine Portable DB mitbringst das und schon eine Läuft läßt sich deine dann nicht nutzten wegen den selbe Port...
Bitte warten ..
Mitglied: Biber
26.09.2008 um 16:06 Uhr
Moin dtz...usw,

ob der Aufwand gerechtfertigt ist eine (Freeware-) Datenbank auf einem Kundenrechner mit zu installieren hängt sicherlich davon ob, ob es sinnvoll ist
  • ein Datenbanksystem einzusetzen, also mehrere normalisierte Tabellen, deren Inhalte in gegenseitigen Abhängigkeiten stehen
  • oder sich der Sachverhalt eher auf ein, zwei flache Tabellen bezieht mit vielleicht noch ein paar *.ini-Parametern
  • oder ob es sinnvoller ist, sich ein eigenes Datenformat auszudenken, weil Du meinetwegen selbst verwaltete verpointerte Baumstrukturen verwalten musst
  • oder ob sich ein allgemein lesbares Dateiformat verwenden lässt (z.B. Excels *.xls-Format.)

Und das hängt von Rahmenparametern ab wie Datenvolumen, Komplexität, Portierbarkeit/Austausbarkeit der Daten, Einzel/Mehrfachzugriffen, Konsistenzanforderungen, Verfügbarkeit etc.

Ich habe mich bemüht, diese unvollständige Aufzählung für Dich in die "richtige" Reihenfolge zu bringen.
Datenvolumen und Komplexität der Datenstrukturen wären die wichtigsten Fragezeichen.

Wenn Du dazu mal zwei Sätze ausformulieren könntest...

Grüße
Biber
Bitte warten ..
Mitglied: dtzzzzzz
26.09.2008 um 19:57 Uhr
Hi Biber,

danke für deine ausführliche Antwort. Ok, die Daten werden wahrscheinlich eher flach sein. Also, wäre jetzt nach deiner Formulierung wohl eine *.ini Datei oder eher wohl eine *.xls Datei die passende Datenbankstrukturen. Ist eine Excels-Datei als eine DB unbedenklich, wenn man z. B. keine Excels installiert hat? Also kann das Tool sie dann trotzdem auslesen, bzw. verändern?

Als ergänzende Frage wäre da noch, ob die Daten dann auch irgendwie gegen Ansicht geschützt werden können in einer Excels-Tabelle?
Bitte warten ..
Mitglied: Biber
27.09.2008 um 15:26 Uhr
Moin dtz..usw,

lass uns da schrittweise weitertasten...
Wenn Du von Komplexität und anzunehmendem Datenvolumen her gesehen keine Datenbank im Hintergrund brauchst, wäre die nächste Frage - genau wie Du auch formuliert hast - "will ich denn, dass sich die Daten auch ohne (mein) Programm lesen lassen oder sind die absolut geheim und schützenswert?"

Und da gehen sicherlich die Meinungen auseinander.
Von meiner Warte aus (so wie ich die Lebenszyklen bzw. befristete Verfügbarkeit von Programmversionen erlebt habe) plädiere ich IMMER für eine strikte Trennung von Programm und Daten.
Programm und Programmcode/-algorithmen sind schützenswert und sollten nicht klar lesbar und kopierbar sein, okay.
Daten dagegen (außer wenn sie fachlich/inhaltlich schützenswert sind) sollten unverschlüsselt/auch ohne ein Programm interpretierbar sein.
Wenn z.B. Dein Benutzer die Beispieldaten, die Du oben skizzert hast auch mal in einem Präsentationsprogrämmchen als Tortengrafik darstellen will, dann wäre es natürlich sinnvoll, wenn diese Daten in allgemein verbreiteten Dateiformaten zugänglich wären.

Langer Rede kurzer Sinn: Falls die Daten nicht gerade aus Adressdaten von F.D.P.-Mitgliedern und deren Liechtensteiner Kontonummern bestehen, dann wäre ein einfaches zeilenweises Testformat (z.b. *.CSV).
Wenn Du die Daten "unleserlich" für andere Programme haben willst, dann denke Dir ein eigenes .dtzzzz-Format aus, also eine Struktur, die nur Dein Programm kennt.

Grüße
Biber
Bitte warten ..
Mitglied: dtzzzzzz
30.09.2008 um 10:07 Uhr
Vielen Dank, Biber, für die ausführlichen Antworten!
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Virtualisierung
gelöst Interne Netzwerke untereinander kommunizieren lassen (9)

Frage von chelewae zum Thema Virtualisierung ...

Exchange Server
Exchange 2007 Datenbank restore ohne Exchange zu verändern - SBS2008

Frage von pitamerica zum Thema Exchange Server ...

Datenbanken
Datenbank API Automation

Link von Frank zum Thema Datenbanken ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Router & Routing
gelöst Empfehlung günstiges ADSL2+ nur Modem (10)

Frage von TimMayer zum Thema Router & Routing ...

Server-Hardware
Lenovo Server System X 3650 M5 Festplatten (9)

Frage von Hendrik2586 zum Thema Server-Hardware ...