|
Search
You searched for the word(s):
Showing page 34 of 49 (482 total posts)
< 1 second(s)
-
După câte înţeleg eu, e vorba de [2], pentru că Ela a scris ''[...] facem fk din orice tabela catre cea de useri ca sa logam id-ul
userului care a creat fiecare inregistrare si a celui care a
modificat-o ultima data.''
Răzvan
-
După cum spuneam, întreţinerea FK-urilor (spre mai multe tabele alternative de utilizatori) poate fi automatizată.
Să presupunem că ai 350 de tabele
cu FK-uri spre tabela Users:
USE tempdb
CREATE TABLE Users (
UserID int IDENTITY PRIMARY KEY,
UserName nvarchar(50) NOT NULL UNIQUE
)
CREATE TABLE ...
-
Cryogenic1981,
Problema e într-adevăr cauzată de numărul mare de FK-uri spre aceeaşi tabelă (nu de modul în care e scris query-ul). Query-ul poate fi pur şi simplu:
DELETE Users WHERE UserID=101
Dar încearcă aceeaşi instrucţiune dacă ai două tabele care referă UserID sau dacă ai zece tabele care referă UserID. O să observi o diferenţă ...
-
Deci acum îţi dă tot eroarea:
Msg 15517, Level 16, State 1, Procedure sendinserturi, Line 26
Cannot execute as the database principal because the principal
''gigel'' does not exist, this type of principal cannot be impersonated,
or you do not have permission.
la aceeaşi linie, 26 ? ... şi eroarea asta când ţi-o dă: atunci când execuţi ...
-
Cred că la linia 26 din trigger e altceva... eu ziceam să scoţi EXECUTE AS-ul din corpul trigger-ului şi să-l laşi doar la început. Cum arată acum trigger-ul ?
Răzvan
-
Într-adevăr, ''GRANT IMPERSONATE ON USER::gigel TO caller'', ar fi o soluţie, însă nu cea mai bună. Problema e că astfel îi dai voie lui caller să facă tot ceea ce poate face gigel (de exemplu, inclusiv să trimită mesaje direct, fără să le scrie în tabelă). Mai bine ar fi să faci astfel:
ALTER TRIGGER dbo.SendInserturiON dbo.tbl_boyWITH EXECUTE ...
-
Dacă vrei să îi dai user-ului X dreptul să îl impersoneze pe Y, atunci scrii ''GRANT IMPERSONATE ON user::Y TO X'', nu ''GRANT IMPERSONATE ON user::X TO Y''. Pe de altă parte, nu prea are rost să-i dăm vreun drept lui dbo, pentru că el oricum îl are, fiind owner-ul bazei de date.Am încercat să reproduc fenomenul (făcând abstracţie de partea de ...
-
Încă un sfat legat de setarea nr. de conexiuni (tot din Books Online):
Because user connections is a dynamic (self-configuring) option, SQL
Server adjusts the maximum number of user connections automatically as needed,
up to the maximum value allowable. [...] In most cases, you need not change the value for this option.
Aşa că eu îţi ...
-
Click dreapta şi ''Delete SQL Server Registration''.
Răzvan
-
Se poate, dar n-are niciun rost. Vezi:http://www.sommarskog.se/dynamic_sql.html#Common_cases
Răzvan
... 34 ...
|
|
|