Top-Themen

Aktuelle Themen (A bis Z)

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

MS-SQL beliebig erweiterbare Parametertabelle mit unterschiedlichen Datentypen

Frage Entwicklung Datenbanken

Mitglied: Schminor

Schminor (Level 1) - Jetzt verbinden

23.12.2013 um 08:48 Uhr, 1635 Aufrufe, 5 Kommentare

Hallo,

hätte mal eine Frage.

Wie baut man am besten eine Datenbank auf, wenn ich eigentlich die Struktur noch nicht genau kenne.
Sprich ich habe da eine c# Anwendung in der ein Benutzer eine Liste an vordefinierten Parametern frei zusammenstellen kann und das sind dann mal 10 Parameter und mal nur 5 Parameter.

Die Parameter können dabei unterschiedliche Datentypen wie Varchar, DateTime, Int oder Numeric haben.

Mein Gedanke war schon mal eine Tabelle Parameters (Id (Int), Wert (Varchar)) zu erstellen in der ich das Speichere.
Nur da kann ich alles dann nur als Varchar speichern und muss wieder konvertieren.

Parameter sind z.B.:
Strom (Numeric)
Spannung (Numeric)
Leistung (Numeric)
Drehzahl (Numeric)
Datum (DateTime)
Menge (Int)
Beschreibung (Varchar)

Danke schon mal für Eure Hilfe.

lg
Norbert
Mitglied: wiesi200
23.12.2013, aktualisiert um 09:13 Uhr
Hallo,

Schon mal daran gedacht das du eine Tabelle mit allen möglichen Parametern erstellst, da sie ja vordefiniert sind und dann aber nur die vom User ausgewählten verwendest?

Edit: währ auch noch ne Möglichkeit
http://technet.microsoft.com/de-de/library/ms189887(v=SQL.105).aspx
Bitte warten ..
Mitglied: Schminor
23.12.2013 um 13:59 Uhr
Hallo,

aha so mache ich das eigentlich auch jetzt schon.
Hätte mir nur gedacht, dass es da eventuell eine schönere Lösung gibt.

Ich hab da jetzt so ungefähr 100 Spalten und davon bleibt meist ein Drittel leer.

lg
Norbert
Bitte warten ..
Mitglied: wiesi200
23.12.2013 um 15:34 Uhr
Sorry aber irgendwie passt das jetzt nicht ganz zusammen.

Du hast ein Programm bei dem sich User so um die 5 - 10 Spalten aus einer SQL Datenbank auswählen können.

Dann kommst du auf 100 Spalten wo 2/3 also nicht ganz 70 Belegt sind.

Du hast eben nur die Möglichkeiten alles in separate Spalten zu schreiben, das kann man dann auf mehrere Tabellen aufteilen.
Oder du schreibst mehrere Daten in eine Spalte, hier bietet sich das XML Format an bzw. das ganze in externe Dateien Auslagern und dann eine Referenz zu schaffen.

bzw. eine Mischung dazwischen.
Du könntest z.b. auch wenn der User nur max 10 Spalten auswählen kann entsprechend die Anzahl + Indexfeldern anlegen.
Und dort dann den entsprechenden Wert eintragen.

Was für dein Konzept das Richtige ist kann hier aber auf Grund mangelnder Angaben keiner sagen.
Bitte warten ..
Mitglied: Schminor
26.12.2013 um 15:09 Uhr
Hallo,

sorry ich glaub da hab ich mich etwas unverständlich ausgedrückt.
Ich hab anfangs mal mit 5-10 Spalten angefangen weil ich das Beispiel einfacher halten wollte.

Also, der Benutzer hat einen Pool an ca. 100 Parametern.
Aus denen stoppelt er sich dann eine Liste zusammen, die dann in die Datenbank gespeichert wird.
Pro Liste wählt er aber wahrscheinlich maximal 30 Parameter aus.

Jetzt habe ich eine Parametertabelle mit ca. 100 Spalten und genau definiertem Datentyp.

Optimal wäre es, wenn der Benutzer sich später mal den Pool der Parameter mit Datentyp selbst erweitern kann.
Bzw. ich das mit relativ wenig Aufwand machen kann.
Momentan muss ich dazu immer die Datenbank anpassen und das komplette Programm durchackern.

Das ist einfach ein Programm, das Anfangs dafür gar nicht gedacht war und ständig erweitert wurde.
Ich denk das kennt jeder. Nur seh ich da kein Ende mehr und darum mache ich mir Gedanken um ein Redesign.

Auch wenn ich mit dem XML-Datentyp momentan noch gar nicht vertraut bin, denk ich das ich
darum nicht wirklich rumkomme. Wenn ich das sauber machen will.

lg
Norbert
Bitte warten ..
Mitglied: wiesi200
26.12.2013 um 15:25 Uhr
Ok,

bei der Erklärung sehe ich XML als vernünftigste Option.
Bitte warten ..
Ähnliche Inhalte
Datenbanken
MS SQL - Join zweier unterschiedlicher Datentypen
Frage von BluejetDatenbanken1 Kommentar

Hallo zusammen, ich stehe leider vor einem Problem, das ich zurzeit nicht so wirklich lösen kann. Es geht um ...

Datenbanken
MS SQL 2000 Mehrere Zeilen mit unterschiedlichen Werten zu einer zusammenfassen
gelöst Frage von DanteGabrielDatenbanken9 Kommentare

Nabend zusammen, ich versuche aktuell eine View zu erstellen, bedauerlicherweise ist die zugrundeliegende Datenbankstruktur alles andere als Hilfreich. (Unabhängig ...

Windows Server
Neuer MS-SQL-Server
gelöst Frage von tingelWindows Server1 Kommentar

Hallo, Ich bin gerade dabei, mir Gedanken zu machen, wie ich am besten unseren SQL-Server 2008 SP3 auf eine ...

Windows Server
MS SQL Login Problem
gelöst Frage von theoberlinWindows Server26 Kommentare

Hallo zusammen, Umgebung ist 2012r2 Domäne und MS SQL Express 2014 auf VM. ich habe folgende 2 Probleme: 1. ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 16 StundenViren und Trojaner1 Kommentar

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 19 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware10 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...

Cloud-Dienste
PIM als SaaS Nutzungsgebühr
Frage von vanTastCloud-Dienste8 Kommentare

Moin, wir haben uns ein PIM (Product Information Management) nach unseren Ansprüchen für viel Geld als SaaS-Lösung bauen lassen. ...