В моем веб-приложении у нас есть список студентов, и у нас есть вход в систему. Когда несколько сотрудников входят в систему и пытаются отредактировать две разные детали ученика, когда первый пользователь открывает страницу, а второй пользователь открывает вторую страницу, одновременно пытаясь обновить две разные детали ученика, при обновлении первые пользовательские данные не получат обновления, а второй пользователь Обновления данных. При проверке с точкой прерывания, в то время при первом обновлении пользователя, он принимал студенческий идентификатор деталей, открытых вторым пользователем. Пробовал Lock, но прежде чем он смог перейти к хранимой процедуре, значение меняется. Любая помощь оценивается.Чтобы заблокировать sql, когда несколько пользователей пытаются обновить информацию о разных пользователях
ответ
То, что вы описываете, звучит просто как ошибка (или ошибки) в коде, который обрабатывает эти данные.
Наиболее распространенной ошибкой здесь является использование членов static
для хранения данных, которые на самом деле запрашиваются. static
означает «за домен приложения», поэтому все запросы разделяют те же поля. В принципе: не делай этого.
Нередко найти код, который использует статический механизм, чтобы избежать передачи данных между местами - потому что его можно вырвать из ниоткуда. Это все еще используется очень неуместно. Он будет работать нормально на dev-машине просто потому, что у вас обычно есть один одновременный пользователь на машине-разработчике. Большинство людей хотят веб-сайт, который масштабируется для нескольких пользователей.
Поиск любых статических элементов. Если вы найдете какой-либо (возможно, за исключением значений конфигурации, которые не меняются во время выполнения), они, вероятно, ошибочны.
Вы также можете добиться тех же ошибок, используя неправильное использование кеша или приложения.
Я думаю, что вы используете статические переменные/поля или открываете два режима редактирования информации о студенте на двух соседних вкладках и удерживаете редактирование studentId в сеансах.
Когда вы открываете второго пользователя на новой вкладке, первый идентификатор ученика переопределяется вторым, даже когда вы возвращаетесь на вкладку ученика и обновляете (выполняете отправку сведений), он будет обновлен для второго пользователя.
Вы избегаете такого рода проблем, используя ViewState["StudentID"]
или Скрытые поля, потому что их область действия находится внутри страницы.
- 1. Обновить информацию о пользователях, сохраненную в sql?
- 2. SQL-запрос, чтобы найти последнюю информацию о пользователях по таблицам
- 3. Запросить информацию о текущих пользователях
- 4. Отобразить информацию о зарегистрированных пользователях
- 5. Как хранить информацию о разных пользователях в базе данных?
- 6. Попытка охватить информацию о пользователях
- 7. cakePHP получить информацию о пользователях пользователя
- 8. PHP, чтобы сохранить информацию о пользователях в текстовом файле
- 9. Создать таблицу Django, отображающую информацию о пользователях
- 10. Где facebook сохраняет информацию о зарегистрированных пользователях?
- 11. Как отслеживать информацию о пользователях на общедоступном веб-сайте
- 12. Проблема, когда несколько пользователей пытаются подключиться к моему NodeMCU
- 13. Как просмотреть общедоступную информацию о пользователях Facebook?
- 14. SKYPE4COMLib получить информацию о других пользователях?
- 15. ответить firebase - как получить информацию о пользователях
- 16. Получить информацию о пользователях с Facebook
- 17. Извлечь информацию о пользователях OpenId среди поставщиков
- 18. Где Magento хранит информацию о заблокированных пользователях?
- 19. получить информацию о пользователях с facebook
- 20. Rails 4 - Отзывы пользователей о других пользователях
- 21. Как хранить информацию о зарегистрированных пользователях в лазурной?
- 22. Дубликат Id записи, когда несколько пользователей пытаются вставить информацию в базу данных - Php
- 23. Обновить информацию о столбце
- 24. Информация о пользователях
- 25. Получение информации о моих пользователях
- 26. Как отправить информацию о пользователях, собранную из разных видов деятельности во время регистрации, до конечной активности?
- 27. Laravel, помня о пользователях
- 28. Отображать информацию о пользователях с MySQL и PHP
- 29. Laravel хранит информацию о пользователях на нескольких сеансах
- 30. Как обновить информацию о MKPinAnnotationView?
*** SQL *** - это только * Структурированный язык запросов * - язык, используемый многими системами баз данных, но не продукт базы данных ... многие вещи специфичны для поставщиков, поэтому нам действительно нужно знать, что * * система баз данных ** (и какая версия) вы используете (пожалуйста, обновляйте теги соответственно) .... –
Я думаю, что у вас есть несколько статических полей на странице ASP.NET. Плохая идея. – YK1