Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проверка на существование одинаковых записей, Проверка 
:(
    Опции темы
vinograd2008
Дата 31.3.2010, 20:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 197
Регистрация: 7.12.2008

Репутация: нет
Всего: нет



Здравствуйте подскажите пожалуйста как проверить существует ли одинаковая запись в БД MSSQL?
Например, если значение поля ID_menedgera совпадает с введеным в текстовое поле значением, то добавление записи не происходит. 
Как сделать такую проверку?
PM MAIL   Вверх
azesmcar
Дата 31.3.2010, 20:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: нет
Всего: 211



установить уникальный индекс или первичный ключ на поле в базе данных.
PM   Вверх
EagleOne
Дата 31.3.2010, 21:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 20.11.2009

Репутация: нет
Всего: 1



Если вопрос правильно понял, то можно так:

Код

insert TableName(
     Id
     , ... )
select
     adding_manager.ManagerId
     , ... - остальные поля, если они есть
from
      (select
            @id_manager ManagerId
            , ... ) adding_manager
            left join TableName table_name
                 on table_name.Id = adding_manager.ManagerId
where
      table_name.Id is null 


Уникальный ключ на поле ИД манагера, конечно не помешает... 
Старнно, что ИД вообще вводится из какого-то текстового поля, а не автоинкриментируемый например... 

PM MAIL   Вверх
jonie
Дата 4.4.2010, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 8
Всего: 118



EagleOne, вместо left join лучше использовать exists в приведенном тобой запросе, быстрее работает на mssql....



--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0681 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.