Во-первых, подсказка apple-mobile-web-app-capable
должна быть установлена для того, чтобы это работало. Эта подсказка заставляет веб-приложение работать в полноэкранном режиме: оно удаляет адресную строку и кнопки навигации, которые вы получаете по умолчанию в Mobile Safari. Удаленные области выделены красным здесь:
Итак, когда приложение находится в полноэкранном режиме (то есть пользователь добавил сайт на свою домашнюю страницу) ), вы также можете контролировать цвет оставшейся тонкой строки состояния в верхней части страницы с помощью apple-mobile-web-app-status-bar-style
, выделенного красным здесь:
В соответствии с документы:
Если для содержимого установлено значение
default
, строка состояния выглядит нормально. Если установлено значениеblack
, строка состояния имеет черный фон. Если установлено значениеblack-translucent
, строка состояния будет черной и полупрозрачной. Если установлено значение по умолчанию или черный, веб-контент отображается под строкой состояния. Если установлено значениеblack-translucent
, веб-контент отображается на весь экран, частично скрытый строкой состояния.
Несколько предостережений:
Это работает только на первой странице, которую вы загружаете; любая навигация на другую страницу вызовет появление адресной строки и кнопок навигации. Поэтому, если вы хотите, чтобы это работало, вы должны создать одностраничный веб-сайт (для нескольких «страниц» рассмотрите подход загрузки Ajax-страниц, такой как тот, который используется в инфраструктуре jQuery Mobile).
Это работает, только когда вы заходите на веб-страницу с помощью ярлыка приложения; , если вы переходите на веб-сайт непосредственно из Mobile Safari, это не имеет никакого эффекта.
Это одно и то же, только с разной областью действия. NOLOCK устанавливается для каждой таблицы и SET Transaction ...
может быть размещен как блок.
Они имеют тот же эффект, только один используется как подсказка блокировки (nolock), а другой используется для области соединения.
Будьте осторожны с любым из них - грязное чтение может быть очень плохой вещью в зависимости от вашего приложения. Повторное чтение одной и той же записи или ее пропуск из-за перемещения страницы может сбить с толку пользователей ...
NOLOCK - это подсказка запроса и, как таковая, применяется только к конкретной таблице в запросе, в котором она указана.
Установка уровня изоляции транзакции применяется ко всему коду, выполняемому с этого момента в пределах текущее соединение или до тех пор, пока оно не будет явно изменено.
Чтобы уточнить, функционально уровень изоляции на работе тот же, однако охват, который охватывается, может не быть.
См. ответ , полученный несколько часов назад, на вопрос SQL Server SELECT, вызывающий блокировку .
Цитата Ремуса Русану :
SELECT может блокировать обновления. Правильно спроектированная модель данных и запрос вызовут лишь минимальную блокировку и не будут проблемой. «Обычная» подсказка WITH NOLOCK почти всегда является неправильным ответом. Правильный ответ - настроить ваш запрос так, чтобы он не сканировал огромные таблицы.
Если запрос не настраивается, вы должны сначала рассмотреть уровень SNAPSHOT ISOLATION, во-вторых, вам следует подумать об использовании SNAPSHOTS БАЗЫ ДАННЫХ, и последний вариант должен быть DIRTY READS (и является лучше изменить уровень изоляции, чем использовать NOLOCK HINT). Обратите внимание, что грязное чтение, как ясно указано в названии, будет возвращать несогласованные данные (например, ваш общий лист может быть несбалансированным).