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, 5200 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 ..
Ähnliche Inhalte
Verschlüsselung & Zertifikate
gelöst Interne, externe Zertifikate (4)

Frage von specialuser zum Thema Verschlüsselung & Zertifikate ...

DNS
gelöst Domain.de auf internem DNS Server (7)

Frage von Max-Mauser zum Thema DNS ...

Server-Hardware
Rack-Gehäuse für internes LTO (8)

Frage von rudeboy zum Thema Server-Hardware ...

Exchange Server
gelöst Exchange interne Mails über anderen Smarthost (3)

Frage von Florian86 zum Thema Exchange Server ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
CNC Maschinen verlieren Netzwerkverbindung (kurioser Fehler) (22)

Frage von NoHopeNoFear zum Thema LAN, WAN, Wireless ...

Webentwicklung
Aktuellen Mitarbeiter auf Homepage anzeigen (13)

Frage von alemanne21 zum Thema Webentwicklung ...

Festplatten, SSD, Raid
Raid-Controller (Areca) Datenverlust trotz R5 (11)

Frage von sebastian2608 zum Thema Festplatten, SSD, Raid ...

Windows Server
gelöst Parameter Übergabe Terminal Server (9)

Frage von ThomasKern zum Thema Windows Server ...