Hi Leute,
nachdem mir beim letzten mal ziemlich flott von euch geholfen wurde, was eine SQL-Abfrage angeht, hoffe ich ihr könnt mir dieses mal auch wieder so schnell helfen.
Also hier meine kleine Frage:
Ich besitze ein Formular unter Access, welches als Datenquelle eine Abfrage besitzt. Nun erscheint beim Start des Formulars eine Dialog-Box, die mich bittet einen Benutzernamen und ein Passwort für den dahinterliegenden SQL-Server anzugeben. Soweit ist ja alles kein Problem, aber ich möchte ganz gerne, das der Benutzer diese Abfrage nicht erhält, sondern eine Anmeldung mit einem bestimmten Benutzernamen und Passwort erfolgt.
Um den Benutzernamen und das Passwort anzugeben, vermute ich mal brauceh ich irgendeine Funktion unter dem Punkt \'Form_Open\', frage ist nur welche?? Muß ich hier mit OpenDatabase arbeiten und die Datenbank ein zweites Mal öffnen oder kann ich hier irgendeinen Parameter á la Username, Password setzten??
Ich hoffe ihr könnt mir helfen!!
MfG
McMorning
Office - Word, Excel und Co. 9.753 Themen, 41.598 Beiträge
Das duerfte schwierig werden, zumindest, wenn das Ganze in einer Mehrbenutzeerumgebung laufen, und der SQL-Server den Benutzer identifizieren soll.
Genaueres kann ich dir aber leider nicht sagen, da ich das noch nicht gemacht habe (aber u.U. bald muss -- mit ORACLE als Datenquelle...)
Volker
HAllo,
ich hätte da folgenden Forschlag für Dich, ich schicke Dir einmal meine lösung des Problems: Das ist der Zugriffscode für meinen Freund "Bully":
Function BullyStartCode()
Dim meldung, stil, Titel, antwort, text1, eingabe
meldung = "Hallo Andreas@Möchtest Du fortfahren?@"
stil = vbOKOnly + vbOKCancel
Titel = "Anmeldung Bully"
antwort = MsgBox(meldung, stil, Titel)
If antwort = vbOK Then
text1 = "ja"
eingabe = InputBox("Bitte gib den Zugangscode ein@Solltest Du nicht über einen Code verfügen kontakte mich bitte unter R11, ich werde Dich dann freischalten@")
If eingabe = "0868" Then
MsgBox "Willkommen und viel Spaß@mit dieser Datenbank@"
DoCmd.Close
DoCmd.OpenForm "Bestellung-Andreas"
Else
MsgBox "Sie verfügen leider nicht über eine Zugangsberechtigung"
End If
Else
text1 = "nein"
MsgBox "Dann eben nicht"
DoCmd.Quit
End If
End Function
Ich hoffe dies hilft dir weiter
govoyager@web.de
Hi Leute,
Sorry, aber ich glaube da habt ihr mich ein wenig falsch verstanden, ich versuch's noch mal:
Also ich habe einen SQL-Server. Zu diesem baue ich per ODBC-Schnittstelle eine Verbindung auf. Das geht im Grunde recht simpel, indem ich unter dem Punkt "ODBC Data Sources" in der Systemsteuerung eine entsprechende Verbindung einrichte.
Anschließend verknüpfe ich meine Datenbank damit (Punkt Neu - Tabelle verknüpfen - Typ ODBC-Datenquelle) und erstelle dann ein Formular, welches diese Tabelle als Datenherkunft (So bezeichnet im Eigenschaftsfenster) oder als RecordSource (So bezeichnet im VB-Code meint aber beides das gleiche) angebe. Danach sind dann alle Felder in der Entwurfsansicht entsprechend ohne Probleme zu verbinden und mit der Navigationsschaltfläche unten kann ich durch die Datensätze springen.
Nun mein Problem:
Da mein SQL-Server mir den Zugang nur per Benutzername und Passwort erlaubt, werde ich natürlich beim ersten Öffnen des Formulars nach diesem gefragt. Genau das möchte ich aber im VB-Code fest eintragen, damit diese Abfrage NICHT erscheint.
Die Frage ist jetzt, gibt es irgendwo eine Möglichkeit dies innerhalb des Formulars für die ODBC-Datenquelle einzustellen oder muß ich mir im Code den kompletten ODBC-Zugriff per Hand mit Workspace, Database, Connection, usw. selber schreiben, die Eingabefelder im Formular alle per VB-Code selber verknüpfen und mir die Navigationsschaltflächen auch selber machen (schließlich laufen die über das RecordSource und das gäbe es ja dann nicht mehr!)??
Also, falls jemand weiß, wie ich möglichst einfach den Benutzernamen und das Passwort für meine ODBC-Datenquelle im Formular VB-Code fest eintragen kann, der möge sich bitte bei mir melden!! ;-)
Gruß
McMorning
Also noch mal kurz gefasst, ich möchte keine Anmelde-Box, sondern ich möchte das diese verschwindet (ohne den SQL-Server verändern zu müssen)!
Hi McMorning,
schau mal in der Systemsteuerung - ODBC-Quellen. An der Stelle kann man für SQL-Server (bei 6.5 zumindest) Login und PW mitgeben.
Danach einfach die entsprechende Tabelle verknüpfen.
Falls das nicht klappt muß ich mal in einem Programm von mir wühlen, wie in VB das Ganze mitgegeben wird.
cu
Stefan