Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
0 / 0 / 1
Регистрация: 11.06.2017
Сообщений: 52

Проверка на изменение данных

07.11.2017, 02:49. Показов 1919. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как сделать проверку допустим, если данные не изменились на 2й раз, то делаем то то, то то?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.11.2017, 02:49
Ответы с готовыми решениями:

Проверка формы на изменение данных
У меня на форме очень много текстовых полей и списков. Необходимо чтобы при изменении значения хотябы одного из них становилась доступной...

Проверка на добавление/изменение данных на форме
Есть таблица с двумя логическими полями в каждом из них всегда только одна запись должна иметь значение ИСТИНА, все остальные должны иметь...

Проверка данных в Access (проверка Статуса Кандидата)
Всем доброго времени суток! Проблема такая. В бд есть таблица кандидатов, в ней есть номер телефона кандидата. Перед заполнением...

10
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
07.11.2017, 03:19
какие данные?изменились как и где?кто здесь? кто все эти люди?!
0
 Аватар для yatvin
56 / 61 / 26
Регистрация: 10.04.2017
Сообщений: 211
07.11.2017, 03:21
что за данные, где храним ?

Не по теме:

ПОМОГИТЕ!!%-)

0
0 / 0 / 1
Регистрация: 11.06.2017
Сообщений: 52
07.11.2017, 03:39  [ТС]
Более подробно. Допустим в MYSQL лежат данные, я делаю туда запрос раз в несколько часов, если они остаются неизменны, то ничего не делать, а если изменились то соответствующие действия. Как можно определять изменились они или нет?
0
Эксперт .NET
 Аватар для Usaga
14122 / 9341 / 1350
Регистрация: 21.01.2016
Сообщений: 35,099
07.11.2017, 04:24
bomjecoder, нужно запомнить предыдущие значения, а потом сравнивать.
0
0 / 0 / 1
Регистрация: 11.06.2017
Сообщений: 52
07.11.2017, 04:32  [ТС]
Вот, вот этот момент и хочу спросить. Как это сделать? Буду благодарен за помощь.
0
 Аватар для EveKS
601 / 485 / 185
Регистрация: 19.04.2016
Сообщений: 1,885
07.11.2017, 05:18
bomjecoder, или хранить на клиенте. Грузим из бд что нам нужно, храним в коллекции, через час грузим еще раз в новую коллекцию и сравниваем ее со старой. Далее, делаем:
Цитата Сообщение от bomjecoder Посмотреть сообщение
если данные не изменились на 2й раз, то делаем то то, то то?
Затем сохраняем новую коллекцию как старую, и через час повторяем действия.

Или писать процедуру.
0
Эксперт .NET
 Аватар для Usaga
14122 / 9341 / 1350
Регистрация: 21.01.2016
Сообщений: 35,099
07.11.2017, 06:34
Лучший ответ Сообщение было отмечено kenny69 как решение

Решение

bomjecoder, заведите во всех нужных вам таблицах дополнительное поле типа timestamp (точный тип сильно зависит от СУБД). Данное поле автоматически обновляется самой СУБД при изменении любого поля в записи. Вычитывайте значение этого поля и запоминайте в приложении. А потом просто сравнивайте раз в час или когда там вам надо.
0
 Аватар для IamRain
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
07.11.2017, 20:22
Как вариант, написать триггер на обновление, в триггере использовать ключевые слова inserted и deleted. В случае обновления deleted будет указывать на старую версию строки, а inserted на новую версию строки, в случае несоответствия - выполнять свою логику.

Добавлено через 14 секунд
Как пример, в бд есть табличка T1 c ключом и строковыми данными в колонке datacol
Триггер на update:
SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
USE AdventureWorks2016CTP3;
GO
CREATE TRIGGER dbo.tn_onUpdate ON dbo.T1
FOR UPDATE 
AS
  BEGIN
  DECLARE @newVal VARCHAR(MAX), @oldVal VARCHAR(MAX)
    SELECT @newVal = i.datacol FROM inserted i
    SELECT @oldVal = i.datacol FROM deleted i
 
    IF @newVal != @oldVal
       RAISERROR (N'New value was set: %s.', -- Message text.  
           10,
           1,   
           @newVal,
           5) WITH nowait
END
0
08.11.2017, 06:51

Не по теме:

IamRain, зачем это всё? Поле timestamp эти костыли заменяет. Достаточно добавлять его в условие where при обновлении или удалении. Этим просто, надёжно и красиво достигается многозадачная работа с СУБД.

0
08.11.2017, 15:26

Не по теме:


Usaga, согласен, с Timestamp решение лучше. Просто показал, как можно обрабатывать события изменения данных на сервере.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.11.2017, 15:26
Помогаю со студенческими работами здесь

Проверка на изменение Edit
Ребят.. Такая задача. Есть два компонента типа TEdit и один TButton. до меня немного не доходит, как при изменении обоих полей TEdit...

Проверка на изменение app.js
Добрый день. Есть задача сделать автообновление страницы если на сервере app.js был изменен. Принял решение проверять каждые 10...

RichTextBox - Проверка на изменение
Подскажите пл., надо проверить RichTextBox на факт внесения в него изменений, for (int i=0;i<PersonsDataGridView.Rows.Count;i++) ...

Изменение и проверка типа переменной
Здравствуйте, есть потребность в создании алгоритма, где будет применено изменение данного, его типа, и проверка этого типа. То есть,...

Проверка текущего пароля (изменение профиля)
Пишу код для изменение профиля. Регистрируюсь на сайте все проходит хорошо захожу в раздел изменение профиля ввожу существующий код и мне...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru