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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> UPDATE нужных полей, SQLServer 
:(
    Опции темы
AlexNor
Дата 21.6.2004, 08:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Я делаю UPDATE записи при её редактировании по всем полям (изменялись они или нет) с помощью хранимки (я передаю значение всех полей...).
А как сделать UPDATE только по тем полям которые были скорректированы?

--------------------
"... зачем тратить время на учение, если невежество даётся даром..."" .... но невежество обходится, порой, слишком дорого... "
PM MAIL   Вверх
boevik
Дата 21.6.2004, 08:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1452
Регистрация: 31.5.2004
Где: Израиль

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



AlexNor, динамически формируешь запрос UPDATE, но IMHO, оставь как есть и модернизируй все поля через хранимку (если их там не 200 штук smile.gif ).


--------------------
Никогда не говори никогда
PM MAIL WWW   Вверх
AlexNor
Дата 21.6.2004, 09:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Да вот динамически как-то неочень хочется если чесно... smile.gif Я думал может как нить можно по другому ...
Полей у меня 12.

Но как тогда быть с пользователями которые имеют право корретировать только пару полей в базе данных?
--------------------
"... зачем тратить время на учение, если невежество даётся даром..."" .... но невежество обходится, порой, слишком дорого... "
PM MAIL   Вверх
boevik
Дата 21.6.2004, 09:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1452
Регистрация: 31.5.2004
Где: Израиль

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



Цитата
Я думал может как нить можно по другому ...

Я не знаю, как по другому.

Цитата
Но как тогда быть с пользователями которые имеют право корретировать только пару полей в базе данных?

Передать в хранимку id юзера, и проверять в ней или юзер меняет запрещенные поля или нет.
Если меняет, вывалить ему ошибку и сделать ну-ну-ну smile.gif


--------------------
Никогда не говори никогда
PM MAIL WWW   Вверх
Guest
Дата 21.6.2004, 09:54 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата
Передать в хранимку id юзера, и проверять в ней или юзер меняет запрещенные поля или нет.

Была такая мысль, а как мне узнать менял ли он запрещённые поля?

Выполнить запрос в хранимке на редактируемую запись и сравнить с переданным? А как в хранимке получить значения SELECT'a???
Т. е.
select * .... where i_id = @numElem
а как значения (в хранимке) из этого select'a получить?
  Вверх
AlexNor
Дата 21.6.2004, 10:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Guest-это я... чё то переклинило оперу....
--------------------
"... зачем тратить время на учение, если невежество даётся даром..."" .... но невежество обходится, порой, слишком дорого... "
PM MAIL   Вверх
boevik
Дата 21.6.2004, 10:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1452
Регистрация: 31.5.2004
Где: Израиль

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



AlexNor
Цитата
Выполнить запрос в хранимке на редактируемую запись и сравнить с переданным? А как в хранимке получить значения SELECT'a???

Код
declare @val1 varchar(50)
select @val1 = field1 from table1 where i_id = @numElem
В @val1 получаешь значение поля и можешь с ним делать, что пожелаешь.


--------------------
Никогда не говори никогда
PM MAIL WWW   Вверх
AlexNor
Дата 21.6.2004, 10:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Спасибо. Буду действовать smile.gif
--------------------
"... зачем тратить время на учение, если невежество даётся даром..."" .... но невежество обходится, порой, слишком дорого... "
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS SQL"
Akina

Akina

Запрещается!

Публиковать ссылки и обсуждать взлом чего бы то ни было.

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы составления неспецифических запросов рассматриваются здесь
  • Используйте теги [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

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

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


 




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


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

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