У меня есть таблица базы данных с именем Form с двумя столбцами Id и UserName.
Я создал представление таблицы, в которой есть столбцы Id и UserName.
В этом представлении я создал УНИКАЛЬНЫЙ КЛАСТЕРНЫЙ ИНДЕКС для столбца UserName. Таким образом, всякий раз, когда пользователь пытается вставить повторяющееся значение для UserName, он будет вызывать уникальное исключение нарушения ограничения.
Есть ли способ выполнить приведенное ниже требование?
Мне нужно добавить увеличивающееся целое число, чтобы сделать имя пользователя уникальным.
Когда пользователь вводит имя пользователя, которое уже присутствует в таблице, оно должно добавлять к нему увеличенное целое число.
При вставке имени пользователя мы не всегда просто добавляем «1» в конец.
Мне нужно добавить увеличивающееся целое число, чтобы сделать имя пользователя уникальным.
Это соответствует поведению Windows при копировании файлов.
Если пользователь вставит «Том» 3 раза, он должен создать «Том 1», «Том 2» и «Том 3».
Если пользователь снова вставит «Том», он должен создать «Том 4».
Снова подумайте об этом:
Если пользователь вручную вставляет «Том» и «Том 2»
Затем пользователь вставляет «Том» — должно быть создано «Том 1».
Затем пользователь снова вставляет «Том» — должно быть создано «Том 3», потому что «Том 2» уже существует.
Аналогичный каталог файлов Windows. Когда мы копируем/вставляем текстовый документ в какую-то папку, он снова и снова.
Мне нужна эта функциональность для получения уникального имени в CQRS с приложением EventSourcing, C#, где когда пользователь копирует какой-либо объект, например. FormName он должен просто добавить инкрементное целое число к FormName на основе имен форм, присутствующих в базе данных, и может возвращаться из базы данных. Таким образом, мы можем отобразить новое имя формы в пользовательском интерфейсе.
TRY...CATCH
? - person Sam cd   schedule 17.09.2015