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

Formular auf Abfrage - keine Eingabe in Textfelder möglich

Frage Microsoft Microsoft Office

Mitglied: RaiStah

RaiStah (Level 1) - Jetzt verbinden

09.11.2010 um 16:13 Uhr, 12938 Aufrufe, 3 Kommentare

Hallo, Ihr Wissenden

noch eine Frage zu Access: ich habe eine Tabelle, darauf basirend eine Abfrage, die die Datensätze nur sortiert. Auf diese Abfrage baut ein einfaches Formular auf. Nun stelle ich erstaunt fest, daß ich in die Textfelder keine Einträge machen kann - mein Rechner meldet überall auf Tastendruck nur einen Ton. Im Kombinationsfeld dagegen kann ich Einträge machen, in die Tabelle direkt auch. Warum, wie lässt sich das lösen?

Vielen Dank für Hilfe,
Rainer
Mitglied: MisterExpulso
09.11.2010 um 17:43 Uhr
Sind die Felder vielleicht gesperrt ???
Bitte warten ..
Mitglied: RaiStah
10.11.2010 um 00:49 Uhr
Danke für die Rückfrage. Das Thema beginnt, mich zu verwirren...

Meine 'Datenbank' ist noch sehr simpel aufgebaut:
1 Tabelle Artikel, enthält ein paar Felder, davon drei vom Typ 'Zahl', die die n-Seite von Verknüpfungen darstellen
3 Tabellen (ich nenne sie Kategorietabellen) mit nur je zwei Feldern: jeweils ein Primärschlüssel (Typ 'AutoWert') und eines mit dem Inhalt. Diese Felder stellen die 1-Seiten der o.g. Verknüpfungen dar.

Darauf aufbauend einige Abfragen, davon für jede der 3 Kategorietabellen je eine Sortierabfrage und dann für die Artikeltabelle diverse Abfragen, die ich als Ausgangsbasis für Formulare verwenden wollte.

Der Effekt ist, daß ein Formular, das nur auf der Tabelle Artikel aufbaut, problemlos funktioniert wie gewünscht: es zeigt alle Datensätze an, ich kann neue Datensätze eintragen, etc. Wenn ich ein Formular auf eine Abfrage aufsetze, die nur die Felder der Tabelle Artikel enthält, ist das auch problemlos.

Wenn ich dagegen eine Abfrage verwende, die neben denen der Artikeltabelle auch noch die Felder der Kategorietabellen enthält - ich wollte in der Abfrage halt nicht die Zahlen der Tabelle Artikel sehen, die auf die jeweiligen Kategorietabellen verweisen, sondern die dort mit diesen Zahlen verknüpften Einträge - kann ich weder im Formular, noch in der Abfrage Einträge in die Felder der Artikeltabelle machen, sondern ernte jedesmal nur eiN 'Piep' meines Rechners.

Warum kann ich in einer Abfrage, die wie oben genannt sowohl die Felder der Artikeltabelle, als auch die der damit verknüpften Kategorietabellen enthält, keine Einträge machen? Was sperrt da?

Danke für Hilfe,
Rainer
Bitte warten ..
Mitglied: Guenni
10.11.2010 um 17:31 Uhr
Hi RaiStah,

sperren tut da nichts.

Lass dir die Abfrage, die auf mehreren Tabellen basiert, in der SQL-Ansicht zeigen.

Dort wirst du den Abfragebefehl sehen, der mit select beginnt. Darauf folgen

die Feldnamen die angezeigt werden sollen und die Tabellen, in der die Werte stehen,

die durch die Feldnamen angesprochen werden. Zum Schluß erfolgt eine Verknüpfung der

Schlüsselfelder. Das Ergebnis einer Abfrage aus mehreren Tabellen, also das, was du

entweder in der Abfrage selber oder im Formular siehst, ist somit in der Form nicht

in der Datenbank vorhanden, sondern nur eine Ansicht (auch View genannt) aus einem

logischem Produkt. Man könnte auch sagen, diese Tabelle, die du in der Abfrage siehst,

gibt es in Wirklichkeit nicht. Und diese Ansicht muß ja zwangsläufig schreibgeschützt sein.


Eine Eingabe bzw. Änderung ist vom Prinzip her auch eine Datenbankabfrage, die sich

aber nur auf eine Tabelle beziehen darf. Wenn du also ein Eingabeformular entwickelst, so ist

das Formular an die Tabelle zu binden, in der die Eingaben gemacht werden. Wenn, wie in deinem

Fall, Fremdschlüssel aus anderen Tabellen eingegeben werden, ist es natürlich hilfreich, (ein)

Kombinationsfeld(er) zu verwenden (Wie du es bereits gemacht hast, siehe dein Beitrag).

18e86fb14e72015ad2a4a4d864818c94 - Klicke auf das Bild, um es zu vergrößern

Wenn das Kombinationsfeld korrekt funkt. soll, könnte die Eigenschaftsansicht etwa so aussehen:

ad5c9de9dba88e0eea5f5bfb25a6ee0c - Klicke auf das Bild, um es zu vergrößern

Wobei die Eigenschaften folg. bedeuten:

Steuerelementinhalt: Ein Feld der Tabelle (an Formular gebunden), in das geschrieben wird.

Datensatzherkunft: In diesem Fall eine SQL-Abfrage auf eine andere Tabelle.

Herkunftstyp: "Steht da".

Gebundene Spalte: Enthält den Wert aus der Quelltabelle, der in die Zieltabelle geschrieben wird.

In dem Fall ist es der Wert aus der ersten Spalte (1) aus der Abfrage (siehe Datensatzherkunft: select [tabelle1].[id], . . .)

der Quelltabelle, der in die Zieltabelle geschrieben wird.


Mein Tipp:

Access zu benutzen, um eine "einfache" Anwendung zu erstellen, ist sicherlich O.K., wenn es auch "Gegner" dieses Programms gibt,

teils auch nicht unbegründet. Wenn du weiterhin Anwendungen in Access erstellen willst, würde ich dir empfehlen, dass du dir

zusätzlich Kenntnisse in SQL und VB-Script aneignest. Denn auch mit VB-Modulen gibt es Möglichkeiten, Aufgaben zu lösen,

die dir Access mit Mausklicks nicht bietet bzw. mit entspr. Kenntnissen in SQL hast du dann Möglichkeiten, die von Access generierten

SQL-Anweisungen zu analysieren und/oder eigene Abfragen zu erstellen.


Gruß
Günni
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Festplatten, SSD, Raid
Performancesteigerung des RAID Arrays möglich? (13)

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

C und C++
gelöst IF Abfrage funktioniert nicht mehr (2)

Frage von pablovic zum Thema C und C ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Microsoft
Ordner mit LW-Buchstaben versehen und benennen (19)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...