Thursday 12 October 2017

Datenbank Design Aktien Trading System


Ich habe vor kurzem die Aufgabe der Modellierung einer Datenbank für die Lagerung von Aktien für mehr als 140 Unternehmen. Die Daten werden alle 15 Minuten für 8,5 h pro Tag von allen diesen Firmen gesammelt. Das Problem Im, das im Augenblick jetzt ist, wie man die Datenbank errichtet, um schnelles searchfetch zu erreichen, das diese Daten gibt. Eine Lösung wäre, alles in einer Tabelle mit den folgenden Spalten zu speichern: Oder ich könnte für jede Firma eine Tabelle erstellen und nur den Preis und das Datum für die Erhebung der Daten speichern (und andere Parameter nicht bekannt atm). Was ist Ihre Meinung über diese Art von Lösungen Ich hoffe, das Problem wurde ausführlich genug erklärt, sonst lass es mich wissen. Jede andere Lösung wäre sehr dankbar Ich nehme es youre besorgt über die Leistung angesichts der großen Anzahl von Datensätzen Ihre wahrscheinlich zu generieren - 140 Unternehmen 4 Datenpunkte Stunde 8,5 Stunden 250 Börsentage Jahr bedeutet, dass Sie etwa 1,2 Millionen Datenpunkte pro Jahr suchen. Moderne relationale Datenbanksysteme können diese Anzahl von Datensätzen - vorbehaltlich einiger wichtiger Erwägungen - in einer einzigen Tabelle problemlos behandeln - ich sehe kein Problem mit der Speicherung von 100 Jahren Datenpunkten. Also, ja, Ihr ursprüngliches Design ist wahrscheinlich das beste: Firmenname Preis Datum usw. Erstellen Sie Indizes auf Firmennamen und Datum, die Ihnen erlauben, Fragen wie beantworten: Was war der höchste Aktienkurs für Unternehmen x, was der Aktienkurs für Unternehmen war X auf Datum y auf Datum y, was war der höchste Anteil Preis, um Leistungsprobleme zu verhindern, bauen Id eine Test-Datenbank, und füllen Sie sie mit Beispieldaten (Tools wie dbMonster machen dies einfach), und dann die Abfragen Sie (denken Sie ) Gegen das reale System laufen, verwenden Sie die Optimierungswerkzeuge für Ihr Datenbanksystem, um diese Abfragen und / oder Indizes zu optimieren. Die erste, wichtigere Frage ist, was sind die Arten und Nutzungsmuster der Abfragen, die gegen diese Tabelle ausgeführt werden. Ist dies eine Online-Transaktionsverarbeitung (OLTP) - Anwendung, bei der die große Mehrheit der Abfragen gegen einen einzelnen Datensatz oder höchstens einen kleinen Satz von Datensätzen oder eine Online Analytical Processing-Anwendung ist, bei der die meisten Abfragen gelesen und verarbeitet werden müssen , Signifikant große Datensätze, um Aggregationen zu generieren und zu analysieren. Diese zwei sehr unterschiedlichen Arten von Systemen sollten auf unterschiedliche Weise modelliert werden. Wenn es der erste Typ von App (OLTP) ist, ist Ihre erste Option besser, aber die Verwendungsmuster und Abfragetypen wären weiterhin wichtig, um die Indizes für die Platzierung auf der Tabelle zu bestimmen. Wenn es sich um eine OLAP-Anwendung handelt (und ein System, das Milliarden von Aktienkursen speichert, klingt eher wie eine OLAP-App), dann könnte die von Ihnen erstellte Datenstruktur besser organisiert werden, um vor-aggregierte Datenwerte zu speichern oder sogar den gesamten Gebrauch zu nutzen Eine multidimensionale Datenbank wie ein OLAP-Cube. Basierend auf einem Sternschema. Beantwortet Mar 23 13 am 15:01 Legen Sie sie in einer einzigen Tabelle. Moderne DB-Engines können die von Ihnen angegebenen Volumes problemlos handhaben. Rowid StockCode PreisTimeInUTC PreisCode AskPrice BidPrice Volumen rowid: Identität UniqueIdentifier. StockCode statt der Firma. Unternehmen haben mehrere Arten von Socken. PriceTimeInUTC ist es, beliebige datetime in einer bestimmten Zeitzone zu standardisieren. Auch datetime2 (genauer). PriceCode wird verwendet, um herauszufinden, was der Preis es ist: OptionsFuturesCommonStock, PreferredStock, etc AskPrice ist der Kaufpreis BidPrice ist der Verkaufspreis. Volume (für buysell) könnte für Sie nützlich sein. Getrennt haben eine StockCode-Tabelle und eine PriceCode-Tabelle. Antwort # 1 am: April 24, 2010, 03:03:13 am »Vielen Dank für die große Antwort ndash RobertH Mar 30, 2012 um 13:54 Oben auf das, was bereits gesagt wurde, Id wie die folgende Aussage sagen: Verwenden Sie nicht Firmennamen oder etwas wie Ticker-Symbol als Ihre Primärschlüssel. Wie Sie wahrscheinlich herausfinden, haben die Aktienkurse zwei wichtige Merkmale, die oft ignoriert werden: Einige Unternehmen können an mehreren Börsen notiert werden und haben daher unterschiedliche Zitatpreise an jeder Börse. Einige Unternehmen werden mehrmals an derselben Börse notiert, aber in verschiedenen Währungen. Als Ergebnis sollte eine richtig generische Lösung die (ISIN, Währung, Börse) Triplet als Bezeichner für ein quote. Walk Through - Erstellen einer MS Access Stock Control-Datenbank Wenn Sie möchten, versuchen Sie, erstellen Sie Ihre eigene Bestandsdatenbank dann weiter lesen. In diesem Artikel führen Sie durch einige Schritt-für-Schritt-Anleitungen für die Erstellung Ihrer eigenen Lager-Management-Datenbank oder Lager-Kontrollsystem in MS Access. Wir haben auch einige Hinweise und Tipps auf unserer langjährigen Erfahrung der Erstellung Access-Datenbanken für echte Unternehmen basiert. Um die Datenbank in diesem Tutorial kostenlos herunterladen, klicken Sie auf den Link oben. Sie können auch dieses Tutorial mit unserem YouTube-Video, dass jeder Schritt erklärt und bietet Demonstrationen, damit Sie es selbst tun, klicken Sie auf den Link oben, um das Video in einem neuen Tabfenster zu öffnen. Vor dem Start Bitte beachten Sie, dass Sie eine Vollversion von Microsoft Access auf Ihrem Computer installiert haben müssen, um diese exemplarische Vorgehensweise zu befolgen oder die freigegebene Datenbank auszuführen, die oben verknüpft ist. Plan Es könnte offensichtlich klingen, aber einer der wichtigsten Punkte bei der Erstellung Ihrer Bestandsdatenbank ist die Entscheidung, was genau Sie tun müssen, und was es ist für. Das Erhalten des Entwurfsrechtes ist viel einfacher, sobald Sie den Zweck der Datenbank verstehen. Eine gut gestaltete Datenbank wird einfacher zu pflegen, und später anpassen, wenn Ihre Anforderungen ändern. Beispielsweise muss die einfache Datenbank, die wir erstellen, in der Lage sein, folgende Aufgaben auszuführen: Bestellungen von Kunden protokollieren Track-Level-Ebenen Warnen, wenn Teile nachbestellt werden müssen Denken Sie an die Details Ihres Unternehmens. Hat jeder Kunde eine Art von Artikel zu einem Zeitpunkt, oder Ihre Kunden bestellen eine Reihe von Teilen oder Artikel von Ihnen alle zur gleichen Zeit Haben Sie nur einen Lieferanten für jeden Teil, den Sie haben Bestellen Sie eine Reihe von Elementen von jedem Lieferant oder liefert jeder Lieferanten nur Sie mit einer Art von Artikel Ihr Design wird auch anders sein, wenn Sie Lagerartikel für die Herstellung anstatt zu verkaufen. Behalten Sie die Antworten auf diese Fragen im Kopf, wie wir in den nächsten Schritt gehen. Definieren Sie die erforderlichen Tabellen Informationen in einer Datenbank werden in Tabellen gehalten. Von diesem Punkt sollten Sie eine Vorstellung von den Informationen, die die Datenbank benötigt, um Ihre Ziele zu erreichen. Sie müssen diese Informationen in einen Satz von Tabellen kategorisieren. Um mit Ihnen don8217t noch tun müssen, dies in Access tun, machen Sie einfach eine Liste von Hand oder in einem anderen Programm. Die Tabellen in unserer Beispieldatenbank sind: Teile. Kunden. Aufträge. PartTypes. PurchaseOrders und Lieferanten. Um die Dinge einfach zu halten, gehen wir davon aus, dass jeder Kunde nur einen Teil zu einem Zeitpunkt bestellt, und dass wir nur einen Teil von einem Lieferanten zu einem Zeitpunkt bestellen. Natürlich kann dies nicht wahr sein für Sie Ihre Kunden können eine ganze Auswahl von Artikeln zusammen, und Sie werden wahrscheinlich kaufen eine Reihe von Produkten in einem Rutsch. In diesem Fall benötigen Sie eine Tabelle, die alle Teile enthält, die mit jeder Bestellung verknüpft sind, wahrscheinlich genannt Order Items. We8217ve machte eine ähnliche Art der Annahme über Kunden, vorausgesetzt, sie sind alle Einzelpersonen oder kleine Unternehmen für große Geschäftskunden mit mehreren Adressen oder Telefonnummern zu speichern Sie benötigen vielleicht eine erweiterte Reihe von Tabellen, um alle Informationen konsistent halten. Aber all dies ist ein erweiterter Thema wirklich, so dass wir nur zeigen Ihnen die einfache Möglichkeit für jetzt mit Tabellen mit mehr grundlegenden Ziele. Felder innerhalb der Tabellen einrichten Innerhalb einer Tabelle werden Informationen in 8220fields8221 gespeichert. Grundsätzlich ist ein Feld die spezifische Information über die Sache, für die der Tisch verantwortlich ist. Typische Felder in der Tabelle Teile sind beispielsweise PartNumber, PartDescription, Supplier und StockLevel. Wenn Sie eine Tabelle als tabellarisches Raster darstellen, wären die Felder die Spaltenüberschriften, wobei jede Zeile einen Eintrag in der Tabelle oder einen Datensatz darstellt. Alle Tabellen sollten ein eindeutiges Identifikationsfeld haben, das Primärschlüssel genannt wird, das für zwei Datensätze nicht identisch sein kann oder immer leer sein darf. Also in unserer Teile-Tabelle, die PartNumber ist einzigartig für jeden Teil und jeder Teil hat einen, so dass wir nur verwenden können. Aber für andere Tabellen, wo dies nicht der Fall sein, können wir erfinden ID-Nummern oder Codes für den internen Gebrauch im System, um sicherzustellen, dass es eindeutig identifizieren kann jeder Eintrag in einer Tabelle. In Access gibt es eine so genannte Auto-Nummer-Feld, das Sie als Primärschlüssel verwenden können, wenn es keine andere offensichtliche Wahl oder Präferenz gibt, die nur eine neue fortlaufende Nummer jedem Datensatz in der Tabelle zuweist. Für jedes Feld in der Tabelle müssen Sie einen Datentyp auswählen, um den Datentyp anzuzeigen, den es enthält, z. B. Nummer, Text, DateTime oder Währung. Innerhalb jeder Art können Sie die genaue Art der Daten, wie die Anzahl der Zeichen für einen Text. Möglicherweise verwenden Sie bereits Teilenummern innerhalb Ihres Unternehmens, und das Format, das Sie verwenden, hilft Ihnen, den Datentyp für das Feld Part Number zu bestimmen. Ihre Teilenummern könnten so etwas wie ACBD2222 sein. In diesem Fall können Sie eine 8-stellige Zeichenfolge verwenden. Jetzt wollen wir uns vorstellen, dass unser Geschäft mit einer großen Anzahl verschiedener Teile umgeht, die wir in verschiedene Typen einteilen. Wir haben eine Tabelle namens PartTypes, die die verschiedenen Arten von Parts auflistet. Wir möchten, dass unsere Parts-Tabelle ein Feld hat, das mit den PartTypes verknüpft werden kann, so dass jedem Teil ein Typ zugewiesen werden kann. Das Feld in der Teiletabelle muss das gleiche wie das primäre Schlüsselfeld (die Sache, die den Datensatz für das System identifiziert) in der PartTypes-Tabelle, die we8217ve einen 1-Zeichen-Code. Die Teile-Tabelle würde auch in ähnlicher Weise mit der Tabelle Lieferanten verknüpft sein, so dass Sie herausfinden können, wer ein bestimmtes Teil liefert. Denken Sie darüber nach, wie Sie die Felder verwenden und sicherstellen, dass Sie sie auf die logischste Weise für Ihre Zwecke definieren. Zum Beispiel kann es sinnvoll sein, die Namen von people8217s als Vorname und Nachname separat und nicht als ein Feld zu speichern, damit Sie die Namen in alphabetischer Reihenfolge (des Nachnamens) einfach sortieren und auflisten können. Ein Tipp, den wir finden, ist, Postadressen als ein Feld zu halten, anstatt sie in einzelne Elemente der Adresse wie Adresse Zeile 1, Adresse Zeile 2, Stadt, Landkreis und Postleitzahl aufzuteilen. Dies macht es viel einfacher, Adressen in Formulare und Berichte zu integrieren, und es erleichtert die Dateneingabe, weil Access gerne die mehrere Zeilen in einem Feld zu speichern. Beim Denken, welche Felder Sie benötigen, sollten Sie sicherstellen, dass sie alle einen eindeutigen Namen haben, es sei denn, dass zwei Felder tatsächlich die gleichen Informationen enthalten. Nur in diesem Fall sollten Sie ihnen den gleichen Namen, wie mit PartTypeCode früher geben. Etwas im Auge zu behalten mit Ihren Namen ist, dass, wenn Sie Fortschritte bei der Verwendung von SQL-Abfragen oder Visual Basic für Applikationen (VBA) - Code mit Ihrer Datenbank, finden Sie das Leben leichter, wenn Sie keine Leerzeichen in den Tabellennamen oder Feldnamen haben. Deshalb haben wir schon PartTypes als ein Wort geschrieben, anstatt den Raum zu haben. Ein weiterer Tipp, um im Auge zu behalten ist, dass es eine schlechte Praxis ist, einem Feld einen Namen zu geben, der bereits hinter den Kulissen von Access für etwas anderes verwendet wird. Diese so genannten 8216Reserved Words8217 gehören Dinge wie 8216name8217, 8216date8217, 8216level8217 und 8216money8217, unter vielen anderen. Sie können eine vollständige Liste der reservierten Wörter von Access8217 suchen, um sicherzustellen, dass keines Ihrer Felder eines verwendet. Dies kann helfen, Verwechslungen in der Datenbank-Engine zwischen vordefinierten Wörtern und Ihren Feldnamen zu vermeiden, die, wenn sie nicht deaktiviert sind, manchmal schwerwiegende Fehler verursachen können. Erstellen Sie Ihre Tabellen in Access Um eine Parts-Tabelle zu erstellen und ihre Felder zu definieren: Klicken Sie im MS Access 201320102007 auf die Registerkarte Create auf der Multifunktionsleiste und dann auf Table Design. Dies öffnet eine neue Tabelle in der Entwurfsansicht. Jede Zeile in der Entwurfsansicht repräsentiert ein Feld in der Tabelle. (Klicken Sie in Access 2003 auf Tabellen in der Liste der Objekte, und klicken Sie auf die Schaltfläche Neu, um ein Dialogfeld mit der Bezeichnung Neue Tabelle zu öffnen.) Klicken Sie in der ersten Spalte in der obersten Zeile. Geben Sie den Namen des ersten Feldes (PartNo) ein. Mit der Tabulatortaste gelangen Sie zur nächsten Spalte, in der wir den Datentyp definieren. Klicken Sie auf die Dropdown-Liste und wählen Sie Text aus. Verwenden Sie die Tabulatortaste, um zur nächsten Spalte zu gelangen, und geben Sie eine Beschreibung für das neue Feld ein. Wenn dies der Primärschlüssel für die Tabelle ist, klicken Sie auf die Primärschlüssel-Schaltfläche auf der Symbolleiste. Klicken Sie auf der Registerkarte Allgemein unterhalb des Fensters in die Zeile Feldgröße und geben Sie 10 ein, um einen Textstring mit 10 Zeichen zu definieren. Klicken Sie auf der Registerkarte Allgemein in die Zeile Beschriftung, und geben Sie die Beschriftung für dieses Feld auf dem Bildschirm (z. B. Teilenummer) ein. Klicken Sie in die zweite Zeile, um das nächste Feld in der Tabelle zu definieren. Und so weiter. Wenn Sie das Hinzufügen von Feldern zur Tabelle abgeschlossen haben, schließen Sie es, indem Sie auf das X in der oberen rechten Ecke klicken. Der Zugriff wird Sie bitten, die Tabelle zu benennen. Geben Sie 8220Parts8221 ein. Die Teile-Tabelle unserer Beispiel-Bestandsdatenbank enthält die folgenden Felder: Tipp. Ist es oft sinnvoll, ein Notes-Feld für alle anderen Informationen einzufügen, die Sie später hinzufügen möchten. Die Screenshots oben zeigen die Tabelle Parts aus unserer Bestandskontrolldatenbank in der Entwurfsansicht. Mithilfe der Entwurfsansicht können Sie alle Felder in Ihrer Tabelle definieren, ihre Datentypen angeben, sie beschreiben und ihr Format definieren. Tipp 8211 Füllen Sie die Beschreibung des Feldes aus. Wenn Sie den Formular-Assistenten verwenden, um Formulare für Sie später zu erstellen, wird diese Beschreibung in der Statusleiste angezeigt, um Benutzern zu helfen. Tipp 8211 Wenn Ihr Feld einen abgekürzten Namen hat oder keine Leerzeichen enthält, verwenden Sie den Bereich Beschriftung, um seinen Namen in Klartext zu schreiben. Diese Beschriftung wird dann auf Formularen angezeigt, die vom Formular-Assistenten erstellt werden. Wenn beispielsweise Ihr Feld POQty heißt, geben Sie in der Beschriftung Menge ein. Die Tabelle "Kunden" lautet wie folgt: 8-stelliger Textstring Einzigartige 8-stellige Referenz für diesen Kunden basierend auf ersten 4 Buchstaben des Nachnamens (z. B. SMIT0001). Das macht es einfach, einzelne Kunden zu finden. Dieses Feld ist der Primärschlüssel. Die Tabelle "Kunden" ist für ein Unternehmen bestimmt, dessen Kunden überwiegend Einzelpersonen sind, wie sie früher angenommen wurden. Wenn Ihre Kunden sind vor allem größere Unternehmen, und Sie können mehrere Kontakte in jedem Unternehmen haben, oder jedes Unternehmen haben mehrere Standorte, dann benötigen Sie eine komplexere Lösung. Sobald Sie haben den Dreh raus, gehen Sie durch den Rest Ihrer geplanten Tische Einstellung sie auch. You8217ll sehen Sie Ihre neuen Tabellen, die im Objektbrowser auf der linken Seite erscheinen, wie Sie sie machen (drücken Sie F11, um diesen Browser oben zu holen, wenn Sie ihn nicht sehen können). Beziehungen Beziehungen werden in der Datenbank eingerichtet, um anzuzeigen, wie sich eine Tabelle auf eine andere bezieht. Eine Eins-zu-vielen Beziehung ist die häufigste Art der Beziehung. In dieser Beziehung kann ein Datensatz in einer Tabelle mehr als einen übereinstimmenden Datensatz in einer zweiten Tabelle haben, aber jeder Datensatz in der zweiten Tabelle kann nur einen übereinstimmenden Datensatz in der ersten Tabelle haben. Beispielsweise kann jeder Part nur einen Part-Typ haben, aber für jeden PartType gibt es wahrscheinlich viele Teile dieses Typs. Wenn jedes Teil nur einen Lieferanten hat, wie in unserem Beispiel, dann ist dies eine weitere unkomplizierte Eins-zu-Viele-Beziehung. Wenn jedes Teil von mehreren Lieferanten geliefert werden kann, benötigen Sie ein anderes Design. In unserer Beispieldatenbank sind die folgenden Beziehungen zwischen den Tabellen erforderlich. Lieferanten - Teile, um den Lieferanten jedes Teils anzugeben. Parts - PurchaseOrders, die den bestellten Teil einer Bestellung anzeigen. Teile - Aufträge, die den von einem Kunden bestellten Teil anzeigen. Kunden - Aufträge, die den Kunden für jeden Auftrag zeigen. PartTypes - Teile, wobei jedes Teil in einen bestimmten Teiltyp eingeteilt wird. Als Beispiel zeigen wir Ihnen, wie Sie die Beziehung zwischen den Tabellen Parts und PartTypes einrichten können. Bevor Sie beginnen, Beziehungen zu machen ist es eine gute Idee, einige Beispiel-Informationen in Ihre Tabellen, die Einträge, die so lange, wie Sie denken, Sie8217ll verwenden jemals verwenden schreiben. Dies wird helfen, ein wenig mit einigen Einstellungen you8217ll müssen später einstellen. Richten Sie das Feld PartTypeCode in der Part-Typen-Tabelle als ein einstelliger Textstring ein, der den Part-Typ definiert. Machen Sie dieses Feld den Primärschlüssel Öffnen Sie die Teile-Tabelle in der Entwurfsansicht. Fügen Sie der Parts-Tabelle ein Feld PartTypeCode hinzu. Stellen Sie sicher, dass es sich auch um eine Zeichenfolge mit einem Zeichen handelt. Klicken Sie nun in die Spalte Datentyp des Feldes Teiltyp, um einen Abwärtspfeil anzuzeigen. Klicken Sie auf diese Schaltfläche, um eine Dropdown-Liste anzuzeigen, und wählen Sie den Suchassistenten aus. Wählen Sie 8220 Ich möchte die Nachschlagespalte, um die Werte in einer Tabelle oder query8221 nachzuschlagen. Klicken Sie auf Weiter. Wählen Sie aus der Liste der angezeigten Tabellen die PartTypes-Tabelle aus. Klicken Sie auf Weiter. Klicken Sie auf die Felder, die in die Suchspalte aufgenommen werden sollen. In diesem Fall wählen wir beide Felder aus. Klicken Sie auf Weiter. Eine Sortierreihenfolge kann bei Bedarf ausgewählt werden. Wählen Sie Beschreibung. Klicken Sie auf Weiter. Im nächsten Schritt können Sie die Breite der Spalten in Ihrer Suchspalte definieren und festlegen, ob die Schlüsselspalte (die Spalte mit der primären Feldschlüssel) angezeigt werden soll. Standardmäßig wird die Schlüsselspalte nicht angezeigt, und in unserem Fall möchten wir nur die Beschreibung ansehen, also lassen Sie das Häkchen in das Feld. Legen Sie nun die Breite der Suchspalte fest, indem Sie die Kante an die gewünschte Position ziehen. Wenn Sie bereits einige Daten in der PartTypes-Tabelle eingegeben haben, wird dies angezeigt, damit Sie die Spalte auf die Breite des wahrscheinlichen Inhalts anpassen können. Klicken Sie auf Weiter. Wählen Sie nun das Label für die Suchspalte aus. Das vorgeschlagene Etikett ist normalerweise richtig. Klicken Sie auf Fertig stellen, um den Suchassistenten abzuschließen. Sie werden gefragt, ob Sie die Tabelle speichern möchten, damit Beziehungen erstellt werden können. Klicken Sie auf Ja. Um die Beziehung abzuschließen, wählen Sie Werkzeuge, Beziehungen, oder klicken Sie auf die Schaltfläche Beziehungen auf der Symbolleiste, um das Fenster Beziehungen anzuzeigen. Sie sehen die Parts-Tabelle und die PartTypes-Tabelle mit einer Linie, die das PartType-Feld in Parts mit dem PartTypeCode-Feld in PartTypes verknüpft. Klicken Sie mit der rechten Maustaste auf diese Zeile und wählen Sie Beziehungsbeziehung (oder doppelklicken Sie auf die Zeile). Aktivieren Sie das Kontrollkästchen Berechtigungsnachweis erzwingen. Sie sollten immer ankreuzen, da sonst die Beziehung wenig Wert hat. Wenn Sie z. B. drei verschiedene Bauteiltypen in der Bauteildiagramm-Tabelle definiert haben: E 8211 Elektronik, S 8211 Software, H 8211 Hardware, aktivieren Sie das Kontrollkästchen Referral Integrity erzwingen, dass Sie kein neues Teil als Teil definieren können Andere als diese. Wenn Sie versuchen, einen Teiltyp aus der PartTypes-Tabelle zu löschen, wenn Teile in der Teile-Tabelle über diesen Teiltyp verfügen, warnt Sie die Datenbank. Aktivieren Sie das Feld Cascade Update Related Fields. Das bedeutet, dass Sie den Primärschlüssel in der Primärtabelle (z. B. die PartTypes-Tabelle) ändern können, und er wird automatisch in der zugehörigen Tabelle (Parts) aktualisiert. Das dritte Feld ist Cascade Löschen Verwandte Felder. Ticken bedeutet dies, dass, wenn Sie einen Datensatz löschen z. B. Software aus der Primärtabelle (z. B. PartTypes), dann werden auch alle Datensätze in der zugehörigen Tabelle (Parts) mit diesem Parttyp gelöscht. Normalerweise würden Sie nicht wollen, dass dies geschieht 8211, wenn Sie Teile des Typs Software in der Teile-Tabelle, dann würden Sie nicht möchten, dass Teil-Typ zu löschen, so lassen Sie die Box nicht getickten. Es wird wahrscheinlich Beispiele in Ihrer Datenbank geben, in denen Sie das Kästchen "Cascade Delete Related Records" aktivieren möchten. Dies trifft normalerweise zu, wenn eine Tabelle ergänzende Informationen für ein anderes 8211 bildet, zum Beispiel, wenn Sie Aufträge und OrderItems-Tabellen (Auflistung mehrerer Elemente auf einer Bestellung) hätten, dann sollten Sie alle OrderItems löschen, wenn Sie einen gesamten Auftrag gelöscht haben. So jetzt you8217ve gesehen, wie man eine Beziehung aufzubauen, sollten Sie nun durch die Tische gehen, die die Beziehungen einrichten, die Sie in Ihrem Design geplant hatten. Sobald Sie alle getan haben, können wir auf den letzten Teil unserer Datenbank zu bewegen. Erstellen einer Neuordnungsabfrage Im Allgemeinen werden Abfragen verwendet, um Daten und Informationen aus Ihrer Datenbank zu extrahieren. In unserem Beispiel wollen wir wissen, ob wir weniger als die Mindestbestände für Teile haben, damit wir wissen, wann Sie mehr bestellen müssen. Sie können jedoch alle möglichen anderen Informationen mit Abfragen extrahieren. Vielleicht möchten Sie wissen, alle Teile von einem bestimmten Lieferanten geliefert, oder wie oft ein bestimmter Kunde bestellt letzten Jahr. Oft werden Sie die Informationen mit einer Abfrage extrahieren und dann einen Access-Bericht verwenden, um die Daten klar zu präsentieren, aber hier machen wir nur die Abfrage. So let8217s durchlaufen, wie Sie eine Abfrage, um zu zeigen, welche Teile unterhalb ihrer Mindestbestand Ebene, und sagen Sie uns, die Lieferanten, von denen sie nachbestellt werden sollte. So richten Sie eine Abfrage ein, um anzuzeigen, welche Teile unter ihrem Mindestbestand liegen, und die Lieferanten, von denen sie bestellt werden sollen: Klicken Sie auf der Registerkarte Erstellen auf Abfrage-Design (Access 201320102007). Oder klicken Sie in Abfragen auf Neu, dann wählen Sie Entwurfsansicht aus, und klicken Sie auf OK (Access 2003). Wählen Sie im Feld Tabelle anzeigen die Option Teile aus. Klicken Sie auf Hinzufügen. Wählen Sie Lieferanten. Klicken Sie auf Hinzufügen. Klicken Sie auf Schließen. Das Raster "Abfrageentwurf" wird nun mit den ausgewählten Tabellen angezeigt. Felder, die in die Abfrage aufgenommen werden sollen, werden hinzugefügt, indem Sie sie aus der Tabelle in das Raster ziehen oder doppelklicken. Die Felder, die wir benötigen, sind PartNo und StockLevel aus der Parts-Tabelle und SupplierName und Address aus der Suppliers-Tabelle. Wählen Sie diese aus. Wir wollen nur Teile anzeigen, deren Lagerbestand geringer ist als der Mindestbestand für diesen Teil. Dies geschieht durch Setzen eines Kriteriums für dieses Feld. Geben Sie lt MinStockLevel in die Kriterienzeile des Feldes "Stock Level" (Spalte) ein. Klicken Sie auf das X in der rechten oberen Ecke des Fensters, um die Abfrage zu schließen. Access fragt Sie, ob Sie Änderungen an der Abfrage speichern möchten und fragt Sie nach einem Namen für die Abfrage (z. B. LowStockLevels). Doppelklicken Sie nun auf die soeben erstellte Abfrage, um die Teile mit niedrigen Lagerbeständen anzuzeigen. Die Abfrage sollte im Objektbrowser auf der linken Seite sichtbar sein. Doppelklicken Sie auf die Abfrage, um die Teile mit niedrigen Lagerbeständen anzusehen, sobald Sie einige Arbeitsdaten im System haben. Eine weitere Sache über die Abfrage: die Zeilen zwischen den Tabellen in der Abfrage-Dataset werden als Joins. Joins werden automatisch zwischen Tabellen erstellt, wenn es Felder gibt, die bereits eine Beziehung zwischen ihnen oder zwischen einem Primärschlüssel und einem anderen Feld mit demselben Namen haben. Normalerweise möchten Sie eine Verbindung hier, aber es gibt Fälle, in denen Sie don8217t wollen, um diese Felder aus verschiedenen Gründen beitreten, so denken Sie daran, dass Sie möglicherweise alle Joins überprüfen, sobald sie erstellt werden. Join-Eigenschaften in Abfragen sind sehr wichtig, wenn Ihre Abfrage mehr als eine Tabelle verwendet. Wenn die Abfrage nicht die gewünschten Ergebnisse liefert, überprüfen Sie diese, indem Sie mit der rechten Maustaste auf die Zeile klicken, die die beiden Tabellen in der Entwurfsansicht verbindet. Hier können Sie wählen, ob Sie nur Teile anzeigen möchten, die einen Lieferanten oder alle Teile mit geringem Lager haben, unabhängig davon, ob sie einen Lieferanten haben (indem Sie 8220Alle Datensätze von 8216Parts8217 und nur die Datensätze von 8216Suppliers8217, wo die verbundenen Felder gleich sind, einschließen. 8221). Sie können diese Option in diesem Beispiel verwenden. Die dritte Option ist das Gegenteil von diesem, also zeigen Sie alle Lieferanten, auch wenn sie keine niedrigen Bestandteile liefern, die in diesem Fall wouldn8217t irgendeinen Sinn machen, also einfach ignorieren, dass ein. So jetzt haben wir die Datenbank nach unserem Design abgeschlossen. Wir können alle Daten eingeben, die wir benötigen, und es wird uns erklären, wann man Produkte umordnet. Natürlich sind die potenziellen Verwendungen einer Datenbank viele, so jetzt we8217re gehen, um kurz zu diskutieren ein paar Möglichkeiten, die Sie vielleicht auf diese Datenbank zu erweitern, um es nützlicher und benutzerfreundlicher zu machen. Formulare in MS Access In MS Access verwenden Sie Formulare, um Daten anzuzeigen, einzugeben und zu bearbeiten sowie die Datenbank zu steuern. Wenn Sie alle Tabellen und Beziehungen in Ihrer Datenbank eingerichtet haben, ist der Formular-Assistent sehr hilfreich beim Erstellen von Formularen basierend auf Ihren Tabellen für die Dateneingabe, Anzeige und Bearbeitung. Anschließend können Sie Änderungen an dem Formular vornehmen, das vom Formular-Assistenten erstellt wird, Hinzufügen und Bearbeiten von Features nach Bedarf. Formulare in MS Access können auch verwendet werden, um Schaltflächen und Links anzuzeigen, um Zugriff auf alle anderen Formulare und Berichte zu gewähren. Wir haben immer eine Form dieser Art und nennen es die Frontscheibe. Das Einrichten eines klaren Top-Level-Formular wie dieses macht es einfach für die Menschen, das System ohne Datenbankkenntnisse zu nutzen. Berichte in MS Access MS Access-Berichte ermöglichen es Ihnen, Informationen für den Benutzer in einer bequemen Weise anzuzeigen, die auf dem Bildschirm angezeigt und dann gedruckt werden, wenn erforderlich. Normalerweise werden die Informationen für den Bericht aus einer Abfrage kommen. Der Report Wizard hilft Ihnen, einfache Berichte zu erstellen. Ausführlichere Berichte gehen über den Rahmen dieses Artikels hinaus. Sicherheit Sie sollten sicherstellen, dass niemand, der nicht vertraut ist, Ihre Daten manipulieren kann. Die einfachste Methode zum Schutz der Datenbank besteht darin, ein Passwort festzulegen. Um das Passwort festzulegen oder zu ändern, muss die Datenbank exklusiv geöffnet werden. Öffnen Sie dazu MS Access, verwenden Sie Datei, Öffnen, um die Datenbank auszuwählen. Klicken Sie auf das Feld Öffnen rechts neben der Schaltfläche Öffnen, und wählen Sie Exklusiv öffnen aus. Wählen Sie Tools, Sicherheit, Set Database Password (Access 2003). Oder wählen Sie die Registerkarte Datenbankwerkzeuge in der Multifunktionsleiste und klicken Sie auf Datenbankkennwort festlegen (Access 2007). Oder gehen Sie in das Menü Datei, wählen Sie das Untermenü Info und klicken Sie auf Datenbank-Kennwort festlegen (Access 20102013) Geben Sie das gewünschte Passwort ein und bestätigen Sie es erneut. Das Passwort ist nun eingestellt. Beim Erstellen einer großen Bestandskontrolldatenbank oder einer, die vertrauliche Informationen enthält, benötigen Sie möglicherweise eine komplexere Sicherheit. Beispielsweise möchten Sie möglicherweise den Zugriff auf einige der Informationen in der Datenbank beschränken oder möchten Sie möglicherweise einige Benutzer die Informationen in der Datenbank anzeigen lassen, aber nicht ändern. Mit MS Access können Sie Arten von Benutzern definieren und Sicherheitsstufen anwenden, sodass Sie festlegen können, welche Aktionen für jeden Benutzertyp verfügbar sind. Dies ist der Rahmen dieses Artikels, aber es heißt Sicherheit auf Benutzerebene, wenn Sie es mehr erforschen möchten. Automatisierungszugriff ermöglicht es Ihnen, benutzerdefinierten Code in seiner Visual Basic für Applikationen-Sprache, als VBA bekannt zu schreiben. Sie können einen Code einrichten, der ausgeführt werden soll, wenn Sie bestimmte Aktionen ausführen oder nur auf Befehl. Dadurch können Sie viele Prozesse automatisieren. Beispielsweise möchten Sie möglicherweise, dass Ihr System die aufgezeichneten Bestände automatisch anpasst, sobald eine Lieferung empfangen wird, oder Sie möchten, dass das Feld Kundenreferenz automatisch aus dem Nachnamen des Kunden erstellt wird. Mit VBA zu automatisieren Funktionen kann eine Datenbank leistungsfähiger und einfacher zu bedienen, aber es erfordert Programmierkenntnisse so it8217s ein weiter fortgeschrittenen Schritt in Ihre Datenbank8217s Entwicklung zu nehmen. So thats alle für dieses Tutorial Artikel. Wenn Sie entscheiden, dass der Aufbau Ihrer eigenen Bestandsdatenbank nicht für Sie ist, so beraten wir Sie bei Software-Matters gerne über Alternativen über unsere kostenlose Erstberatung. Kontaktieren Sie uns unter 01747 822616 oder füllen Sie das Anfrageformular hier aus und wir melden uns bei Ihnen. Danke fürs Lesen

No comments:

Post a Comment