Generelle Frage zu Access Datenbank

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Generelle Frage zu Access Datenbank

    Hallo zusammen,

    da ich noch nicht so viel mit Datenbanken gearbeitet habe habe ich hier mal eine Frage die ich mir im Netz nicht so beantworten konnte. Sicherlich gibt es dazu einiges an Lektüre aber ich dachte ich frage mal hier in der Community.

    Mal angenommen ich habe eine Access Datenbank die 4-5 Spalten hat und sehr viele Zeilen.
    Kann ich dann in einer Textbox ein wert eingeben und diesen in einer bestimmten Spalte suchen? und nur diesen dann per View ausgeben?
    Beispiel: Ich suche den Wert 45 in Spalte 4 der Datenbank...
    Er soll Spalte 4 in allen Zeilen gucken und den Wert finden und dann aus Spalte 5 ausgeben. Geht sowas? Manchmal versteht man den Wald vor lauter Bäumen nicht und stellt doofe Fragen - aber dafür sind die Foren ja da wo man lieb fragen kann :)

    Grüße
    Hallo

    Mc-Muffin schrieb:

    Er soll Spalte 4 in allen Zeilen gucken und den Wert finden und dann aus Spalte 5 ausgeben. Geht sowas?

    Genau für sowas ist eine Datenbank da.

    SQL-Abfrage

    1. SELECT TOP 1 Spaltenname5 FROM Tabellenname WHERE Spaltenname4 = 45


    Grüße
    Sascha
    If _work = worktype.hard Then Me.Drink(Coffee)
    Seht euch auch meine Tutorialreihe <WPF Lernen/> an oder abonniert meinen YouTube Kanal.

    ## Bitte markiere einen Thread als "Erledigt" wenn deine Frage beantwortet wurde. ##

    Das heißt in diesem Fall wenn ich es richtig verstehe:

    - Zugriff Datenbank (Acess) oder ist hier SQL die bessere Wahl?
    - Aufgreifen des Wertes (textbox)
    - Durchsuchen der DB
    - Ausgabe ( Datagridview - oder gibt es hier etwas was hierfür geeigneter ist? Listview?)

    Sorry aber das Thema DB ist echt noch ein wenig schwer für jemanden der nicht täglich mit arbeitet ^^

    Mc-Muffin schrieb:

    ein wenig schwer für jemanden der nicht täglich mit arbeitet
    Und noch viel schwerer für Leute die damit täglich arbeiten :P

    SQL ist die Sprache mit der du Anfragen an eine Datenbank wie Access absetzt. Sehr viele Datenbanksysteme unterstützen SQL als Abfragesprache, auch wenn sie oftmals ihre eigenen Dialekte haben, wenn es zur wirklichen Programmierung in SQL kommt. Einfache Dinge wie das Hinzufügen, Abfragen, Ändern und Löschen von Daten (Create, Read, Update, Delete -CRUD) sind jedoch bei allen (mit kleinen außnahmen) gleich.
    Kurz gesagt: Du benutzt SQL um Access mitzuteilen welche Daten du gerne hättest.

    Da fast alle Datenbanksysteme die Daten tabellarisch Speichern, ist es natürlich auch von Vorteil diese Daten tabellarisch anzuzeigen

    Mc-Muffin schrieb:

    Mal angenommen ich habe eine Access Datenbank die 4-5 Spalten hat und sehr viele Zeilen.
    Jo - da zeigt sich, dass du Neuling.
    Weil eine Datenbank hat keine Spalten.
    Eine Datenbank hat Tabellen
    Und die Tabellen darin haben Spalten.

    Mc-Muffin schrieb:

    Kann ich dann in einer Textbox ein wert eingeben und diesen in einer bestimmten Spalte suchen? und nur diesen dann per View ausgeben?
    Beispiel: Ich suche den Wert 45 in Spalte 4 der Datenbank Tabelle...
    Dazu benötigst du keine Datenbank.
    Sowas lässt sich viel viel einfacher mit einem typisierten Dataset abhandeln.

    Überhaupt sollte man, ehe man sich codemässig an Datenbanken heranmacht, den Umgang mit dem typDataset erlernen, weil sonst verfällt man nahezu sicher auf eine höchst miserable Herangehensweise.
    Will heissen, man codet extrem umständlich, fehleranfällig, und anfällig gegenüber Sql-Injection-Angriffen.

    Ich versuchs nochmal:
    Also um mit Datenbanken effizient umzugehen, muss man den Umgang mit dem typisierten Dataset erlernen (alternativ: den Umgang mit Entity-Framework, aber dassis schwieriger).
    Man kann auch ohne typDataset (oder EF) mit Datenbanken umgehen, aber davon ist dringendst abzuraten (umständlich, fehleranfällig, und anfällig gegenüber Sql-Injection-Angriffen)
    Datenverarbeitung findet nicht in Datenbanken statt, sondern im typDataset (oder EF).
    Nur mit dem typDataset kann man eine Datenverarbeitung schreiben, die auch ganz ohne Datenbank auskommt.
    Dabei kann man jederzeit nachträglich eine Datenbank hinterlegen, weil dem typDataset ists egal, ob es aus einer Datenbank befüllt wird (umständlich, aber mächtig), oder einfach aus einer Xml-Datei.

    nochma zu

    Mc-Muffin schrieb:

    Kann ich dann in einer Textbox ein wert eingeben und diesen in einer bestimmten Spalte suchen? und nur diesen dann per View ausgeben?
    Beispiel: Ich suche den Wert 45 in Spalte 4 der Datenbank Tabelle...
    Im typDataset wäre das ein Einzeiler, man würde nämlich einen BindingSource-Filter setzen:

    VB.NET-Quellcode

    1. MyTableBindingSource.Filter = "Spalte4='" & TextboxFilter.Text &"'"


    Paar Tuts zum Thema:
    Daten laden und speichern
    vier Views-Videos
    wobei die beide bereits weit über das von dir angefragte (Wert in einer Tabellenspalte suchen) hinausgehen.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ErfinderDesRades“ ()