Oracle XE или экспресс SQL Server

Элемент, который вы пытались найти, не был в DOM , когда ваш скрипт работал.

Позиция вашего DOM-зависимого скрипта может оказать глубокое влияние на его поведение. Браузеры анализируют HTML-документы сверху донизу. Элементы добавляются в DOM, и сценарии выполняются (как правило), когда они встречаются. Это означает, что порядок имеет значение. Как правило, скрипты не могут найти элементы, которые появляются позже в разметке, потому что эти элементы еще не добавлены в DOM.

Рассмотрим следующую разметку; сценарий # 1 не находит

, а сценарий # 2 преуспевает:


test div

Итак, что вы должны делать? У вас есть несколько вариантов:


Вариант 1: Переместите свой скрипт

Переместите свой скрипт дальше по странице, перед закрывающим тегом тела. Организованный таким образом остальная часть документа анализируется до того, как будет выполнен ваш скрипт:


  
  

Примечание: размещение скриптов внизу как правило, считается лучшей практикой .


Вариант 2: jQuery's ready()

Отмените свой сценарий до тех пор, пока DOM не будет полностью проанализирован, используя ready() :



Примечание. Вы можете просто привязать к DOMContentLoaded или window.onload, но у каждого есть свои оговорки. jQuery ready() предоставляет гибридное решение.


Вариант 3: Делегирование событий

Делегированные события имеют преимущество в том, что они могут обрабатывать события из элементов-потомков, которые будут добавлены в документ позже.

blockquote>

Когда элемент вызывает событие (при условии, что это bubbling g6], и ничто не останавливает его распространение), каждый родитель в родословной этого элемента также получает событие. Это позволяет нам привязать обработчик к существующему элементу и примерным событиям, когда они пузырятся от его потомков ... даже те, которые добавлены после присоединения обработчика. Все, что нам нужно сделать, это проверить событие, чтобы узнать, был ли он поднят нужным элементом и, если да, запустите наш код.

jQuery on() выполняет эту логику для нас. Мы просто предоставляем имя события, селектор для желаемого потомка и обработчик событий:



Примечание: Обычно этот шаблон зарезервированы для элементов, которые не существовали во время загрузки или , чтобы избежать прикрепления большого количества обработчиков. Также стоит отметить, что, пока я прикреплял обработчик к document (для демонстрационных целей), вы должны выбрать ближайшего надежного предка.


Вариант 4: Атрибут defer

Используйте атрибут defer в

Для справки, вот код из этого внешнего скрипта :

document.getElementById("test").addEventListener("click", function(e){
   console.log("clicked: %o", this); 
});

Примечание: атрибут defer, безусловно, кажется , как волшебная пуля , но важно знать об оговорках ... 1. defer может использоваться только для внешних скриптов, т. е. для тех, у кого есть атрибут src. 2. знать о поддержке браузера , то есть: ошибка реализации в IE & lt; 10

8
задан pnuts 31 December 2014 в 07:42
поделиться

8 ответов

Извините, никакая ссылка, но один совет. Поскольку мы поддерживаем Oracle Server и SQL Server, я знаю, что получение фиксирует для 'нормальной' базы данных Oracle, не что-то, что я называю забавой. Необходимо заплатить за него, и если у Вас нет инструмента, который обновляет Вашу систему Oracle для Вас, это - боль в a.., если Вы спрашиваете меня. Выезд, как XE Oracle поддерживается с, обновляет/устраняет. Я не знаю, я только использую 'нормальную' базу данных Oracle (Developer).

3
ответ дан 5 December 2019 в 08:01
поделиться

Я пошел бы для решения SQL Server Express, если Вы абсолютно не должны использовать функцию в Oracle, которую не имеет SQL Server, и у Вас нет применимого обходного решения.

Пример преимуществ Oracle:

  • Аналитические функции в СКАЛЕ Oracle!
  • МН / SQL лучше, чем T-SQL.
  • Если Вы выходите на более высокий уровень систему к 1,000's пользователей все обновление того же небольшого набора данных
  • Вы масштабируетесь до баз данных мульти-ТБ,
  • Необходимо масштабироваться для необходимости в больших числах ЦП в сервере (более чем 8).
  • нужна мгновенная обработка отказа (RAC)
  • Вы действительно не можете позволить себе потерять транзакцию.

Возможно, можно сказать, я - крупный поклонник Oracle! Но я думаю, что Oracle Express является коммерческой реакцией на SQL Server Express, и я не думаю, что Oracle действительно глубоко в глубине души нравится она.

  • Вы знаете с SQL Server, что существует процедура обновления (SQL Server, который 2008 скоро) плюс пакеты обновления.
  • SQL Express является также большим количеством "установки, и забудьте", чем Oracle.
  • и это будет интегрироваться лучше с Вашим IDE (если Ваше использование.NET)

С точки зрения скорости оба будут освещением, быстрым с таким небольшим размером набора данных.

13
ответ дан 5 December 2019 в 08:01
поделиться

Было бы трудно спорить так или иначе, учитывая потребности, которые Вы обрисовали в общих чертах, это любой будет блистать по другому.

То, что я скажу, является этим:

  1. Вы говорите, что Вы уже familar с SSExpress, затем это - серьезное основание придерживаться его
  2. По моему скромному мнению, инструменты с SSExpress выше и легче использовать, чем эквивалентная Oracle

Тем не менее у меня есть намного больше опыта с SS, чем Oracle так YMMV.

4
ответ дан 5 December 2019 в 08:01
поделиться

Я думаю, что замечательно заново продумать вещи время от времени и что очень умно рассмотреть альтернативные продукты, когда Вы на перекрестке, чтобы сделать так.

Если бы Вы - удобные системы оптимизации и являетесь dba уровнем в навыках, я рассмотрел бы PostgreSQL. Я не считаю меня dba и имею посредственные навыки базы данных и нахожу SQL Server Express чрезвычайно простой в использовании. Кроме того, у меня были продукты, превышают пределы SQL Server Express - переход к SQL Server Standard / Предприятие является бесшовным.

Я понимаю, что это не имеет значения на техническом уровне, но Larry Ellison покупает струи и проституток с его прибылью. Bill Gates решает проблемы огромной важности для человечества с его. При прочих равных условиях я всегда предпочитаю давать свои деньги Bill Gates.

1
ответ дан 5 December 2019 в 08:01
поделиться

Это любое использование:

https://web.archive.org/web/1/http://downloads.techrepublic%2ecom%2ecom/5138-9592-6028761.html

Регистрация NB требуется

0
ответ дан 5 December 2019 в 08:01
поделиться

100% SQL Express, более легкой установить и поддержать, чем Oracle.

0
ответ дан 5 December 2019 в 08:01
поделиться

Обе из точек KiwiBastard очень хороши, и я полностью согласен с ним.

Если Вы действительно хотите свободную альтернативу, которая подобна MS SQL и поддерживает рост, должен Вы нуждаться в нем, Вы могли взглянуть на MySQL или PostgreSQL. SQLite также кажется хорошим выбором. Конечно, можно позволить себе старый сервер Linux, если Вы работаете в компании с 20 сотрудниками.

0
ответ дан 5 December 2019 в 08:01
поделиться

По моему скромному мнению, основная проблема с SQL Server, в течение долгого времени был, никакая непротиворечивость чтения мультиверсии. К счастью, это было исправлено начиная с SQL Server 2005 с уровнем изоляции снимка.

Если Ваш поиск хорошего RDBMS для маленького проекта requring минимальное знание для обслуживания, SQL Server Express Edition является хорошим выбором. SQL Server Express Edition UI намного легче понять, чем RMAN или "более легкое" - к использованию копируют сценарии, включенные с Базой данных Oracle XE, который требует offlining Ваша база данных.

База данных Oracle XE находится в моем списке ***. Они недавно выпустили драйвер ODBC для Linux, который не был скомпилирован правильно (ld, возвращает отсутствующие символы для необходимых функций ODBC) быть в весь применим (10.2.0.4). С этим видом отсутствия внимания к любой разумной сумме QA даже для 'свободного' продукта я думал бы дважды о потере работоспособности по той дороге.

0
ответ дан 5 December 2019 в 08:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: