![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 09.10.2008
Сообщений: 30
|
![]()
У меня есть запрос, выбирающий из таблицы все фамилии, имена отчества. Далее обновляются все имена случайным значением, выбранным из той же таблицы:
Код:
Нужно сделать, чтоб каждая запись заменялась на РАЗНЫЕ имена. Подскажите, как построить запрос? |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 24.11.2008
Сообщений: 26
|
![]()
насколько я знаю в sql нет рандома так что врядли что получится сделать он будет всегда брать первую запись в запросе, единственное что чтожно придумать это попробовать собрать свой небольшой рандом используя курсоры. да и мне интересно это так задуманно что после UPDATE ты откатываешь транзакцию?
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 09.10.2008
Сообщений: 30
|
![]()
Транзакция используется для того чтобы протестировать что получится, а базу при этом не затронуть)))
А можно как то обратиться к каждой строке таблицы отдельно и для нее случайным образом выбрать имя? |
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 24.11.2008
Сообщений: 26
|
![]()
да через курсор
declare cur cursor for select поля которые тебе нужны для просмотра или изменения from ******* имя таблицы которую ты будешь просматривать или изменения open cur fetch next from cur into @имя переменных для каждого поля из селекта через , BEGIN TRAN while @@FETCH_STATUS = 0 --указывает удачно ли произошел один цикл как только записи закончатся в курсоре он вернет -1 и цыкл закончится begin update твоя таблица для которой был сделан курсор set поле любое = любое занчение where current of cur fetch next from cur into @имя все тойже переменной end close cur deallocate cur COMMIT TRANSACTION что то типа этого |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 09.10.2008
Сообщений: 30
|
![]()
AlexanderPeshkov пасиб вам ОГРОМНОЕ очень помогло)))
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Update данных | KiSH333 | БД в Delphi | 2 | 01.12.2008 13:28 |
c# and Access - update | MAcK | Общие вопросы .NET | 3 | 20.10.2008 12:58 |
update или исправление записей в таблицах. | Roof | БД в Delphi | 4 | 15.08.2008 15:35 |
Удаление, обновление записей из MySQL таблицы | xDjarx | БД в Delphi | 2 | 14.05.2008 13:36 |
UPDATE и DELETE | Дамир | БД в Delphi | 3 | 13.03.2007 01:44 |