Порядок устанавливается SQL-сервером, единственная вещь, которую можно сделать, использовать системный SP (sp_settriggerorder) для установки, какой триггер будет стрелять сначала и который будет стрелять в последний раз.
установка Beyond первые и последние триггеры для увольнения Вы не можете изменить или сказать, который будет использовать SQL-сервер порядка. Поэтому Вы захотите создать свои триггеры, таким образом, они не будут полагаться, какой порядок они уволены. Даже если Вы определяете порядок, в который они стреляют сегодня, он может измениться завтра.
Эта информация основана на SQL-сервере 2000, однако я не верю действию 2005/2008 по-другому в этом отношении.
Что-то вроде http://jscc.phorward-software.com/ , может быть?
JS / CC - первая доступная система разработки парсеров для JavaScript и ECMAScript - производные. Он был разработан как с целью создания продуктивной системы разработки компиляторов, так и с целью создания простой в использовании академической среды для людей, заинтересованных в том, как генерация таблицы синтаксического анализа выполняется в целом в восходящий синтаксический анализ.
Независимое от платформы программное обеспечение объединяет: основанный на регулярных выражениях лексический анализатор генератор , сопоставляющий отдельные токены из входного потока символов и LALR (1) генератор синтаксического анализатора , вычисляющий таблицы синтаксического анализа для данной спецификации контекстно-свободной грамматики и построение автономного работающего анализатора. Контекстно-свободная грамматика, передаваемая в JS / CC, определена на метаязыке на основе Backus-Naur-Form и позволяет оценивать вставку индивидуального семантического кода при сокращении правила.
JS Сам / CC полностью написан на ECMAScript , поэтому его можно выполнять множеством разных способов: как платформенно-независимый, основанный на браузере JavaScript, встроенный на веб-сайт, как хост-приложение Windows Script, как скомпилированный исполняемый файл JScript.NET, как интерпретируемое приложение Mozilla / Rhino или Mozilla / Spidermonkey или сценарий оболочки V8 в Windows, * nix, Linux и Mac OSX. Однако для продуктивного выполнения рекомендуется использовать версии для командной строки. Эти версии позволяют собрать полный компилятор из спецификации парсера JS / CC, который затем сохраняется в исходном файле JavaScript .js.
Если вы хотите создать парсеры JavaScript и генераторы кода, ознакомьтесь с реализацией MetaII в Javascript.
Учебное пособие по MetaII Compiler проведет вас через построение полностью автономной системы компилятора, которая может переводить себя и другие языки:
Учебное пособие по компилятору MetaII
Все это основано на удивительном небольшая 10-страничная техническая статья Вала Шорре: META II: язык написания синтаксически ориентированного компилятора от честного до бога 1964 года. Полное самоописание компилятора MetaII занимает около 30 строк! Я научился создавать компиляторы из этого еще в 1970 году. Наступает умопомрачительный момент, когда вы, наконец, понимаете, как компилятор может регенерировать себя ....
В учебном пособии объясняется, как это работает, и реализуется MetaII, компилирующий MetaII в JavaScript. Вы можете легко изменить этот компилятор, чтобы анализировать другие языки и создавать другой Javascript.
Для простых задач синтаксического анализа я очень люблю использовать вариант синтаксического анализатора Pratt's Top Down Operator Precedence . Хотя Пратт написал исходную статью, используя старый диалект Лиспа, одни и те же концепции можно легко использовать в большинстве языков. Фактически, Дуглас Крокфорд написал отличную статью о синтаксическом анализе приоритета операторов сверху вниз в JavaScript , что может быть именно тем, что вам нужно.
Я искал нечто подобное, в котором не было бы дыр в безопасности, и я наткнулся на два ресурса. Они не анализируют сценарий, а фактически запускают его в «безопасной» среде - чего нельзя гарантировать при использовании функции eval
. Итак, я не знаю, именно то, что вы ищете, но взгляните:
В зависимости от конструкции набора ' инструкций », вы можете использовать встроенную функцию Javascript eval
, которая анализирует исходный код Javascript; вы можете написать простой переводчик для преобразования инструкций в код Javascript.
Кстати, будьте очень осторожны с дырами XSS.
если вам действительно нужен лексер, попробуйте prettify .