2017-09-21 3 views
0

Ich habe eine Azure SQL-Datenbank und eine Access-Frontend-Kombination, die gut funktioniert, aber dann aufgefordert wurde, eine Trainingsversion bereitzustellen. Am besten war es, ein neues Schema zu erstellen und doppelte Tabellen zu erstellen. Ich war in der Lage, das Schema zu erstellen, ein neues Login/Benutzer und kopieren Sie die Tabellen über. Die ursprünglichen Tabellen in 'dbo' und die neuen Tabellen im Schema 'trn'. Der Plan bestand darin, die Schemaspezifikationen aus meinen Access-Abfragen zu entfernen und sich auf die Logins ("Benutzer" für Schema "dbo" und "Trainee" für Schema "trn") zu verlassen, um auf die Tabellen im entsprechenden Schema zuzugreifen. Mein Problem ist, dass meine neuen Login/User 'Trainee' Anfragen nicht auf das 'trn' Schema, sondern auf das ursprüngliche 'dbo' Schema gelenkt werden. Ich habe im Internet nach Antworten gesucht und alle möglichen Änderungen an Berechtigungen versucht, bewilligt und widerrufen usw., ohne Erfolg. Mir fehlt eindeutig etwas, jede Hilfe wäre sehr geschätzt.Azure SQL-Benutzer und Schemas

Antwort

0

dbo ist das Standardschema, wenn Sie nichts dagegen tun. Haben Sie das Standardschema für den Benutzer korrekt festgelegt?

Auch wenn Sie auf Ansicht und gespeicherte Prozeduren verpfänden, werden Sie höchstwahrscheinlich auf alle Arten von fiesen "executed as" -Problemen stoßen.

Ich würde diesen Link empfehlen, um zu lesen, wie oben das Standardschema gesetzt wurde. https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-user-transact-sql

Beifall

+0

Danke @ user1694674. Ich hatte das Standardschema festgelegt, tat es aber wieder, um sicherzugehen. Ich habe den Nachmittag damit verbracht, daran zu arbeiten und fair zu Azure zu sein, das Problem liegt nicht beim Server. Nach meinen Recherchen und Tests habe ich festgestellt, dass das Problem in meinem Access-Frontend liegt. Ich habe versucht, die ODBC-Verbindungszeichenfolge von einem Benutzer-Login zu einem anderen on-the-Fly zu ändern, aber Access lässt mich nicht (ich denke, sobald die erste Verbindung zum Server die ODBC-Verbindung und die UID hergestellt wird und pwd kann nicht geändert werden). Ich werde weiter nach einer Lösung suchen und sie veröffentlichen, wenn ich sie finde. – MarkWelsh