Таким образом, основная цель состоит в том, чтобы замаскировать или случайно изменить значение uniqueidentifier перед вставкой.
Например: у меня есть таблица
Create table Student
(
Student_ID masked WITH (FUNCTION='default()') DEFAULT NEWID()
Student_Name varchar(100),
)
Я вставляю новые данные:
insert into DDM_Student_Sample values ('B9BC5E61-0F3C-498F-AF2C-1AC16446A846','Stuart Little Joe')
Результат такой же, как и при вставке, т.е. uniqueidentifier = 'B9BC5E61-0F3C-498F-AF2C-1AC16446A846'
Я создал пользователя с логином:
CREATE USER MAIN_USER FOR LOGIN MAIN_USER;
EXEC sp_addrolemember 'db_owner', 'MAIN_USER';
По общему количеству (http://www.sqlservercentral.com/articles/Security/149689/) itговорит, что вы должны создать пользователя без входа в систему . Может быть, в этом проблема, почему Student_ID не изменяется случайным образом.
В конце, возможно, есть другой способ перед вставкой данных в таблицу, изменить его значение случайным образом.Или я должен просто изменить значение с внешнего интерфейса? И написать что-то вроде:
model.StudentId = Guid.NewGuid();
model.SaveToDatabase();