Локальные и глобальные временные таблицы в SQL Server

Я понял, дело в том, что если вы выбираете фреймворк, то используете ли вы что-нибудь, будь то фреймворк для MS Bot, wit.ai, api.ai (dialogflow) и т. Д., Выбор зависит только от того, что они могут предложить. NLP - это просто механизм синтаксического анализа, который сообщает вам контекст того, что хочет сказать пользователь, и ничего кроме этого. Если бы мне пришлось выбирать, я бы проверил следующие пункты & amp; затем решите.

1. Модель ценообразования 2. Точность вывода 3. Доступность API / SDK 4. Многоязычность 5. Поддержка аудио 6. Конфигурации ML 7. Интеграция с социальными сетями 8. SmallTalk 9. Конфигурация ML

По моему личному мнению, api .ai намного гибче в использовании & amp; также есть бесплатный стандартный план. Платформа MS bot, напротив, платная & amp; есть много новых функций, включая диспетчерские услуги и т. д., более совместимых с когнитивными службами MS. Теперь, когда я подхожу к соединяющимся точкам, я думаю, что поток связи будет следующим:

Записывающее устройство -> Захватить команду -> Переписать ее -> Отправить в NLP -> Webhook (ваш бизнес-логика находится здесь) -> Проверить вызываемое намерение -> Служба принять меры -> Устройство выполняет действие -> успешно? отправить ответ обратно в НЛП -> отправить его вызывающей службе -> отвечает обратно (я принял меры для вас!)

Надеюсь, это поможет, спасибо,

140
задан Blorgbeard 23 February 2014 в 11:30
поделиться

4 ответа

Я нахожу это объяснение достаточно ясным (это чистая копия с Technet):

Существует два типа временных таблиц: локальные и глобальные. Локальные временные таблицы видны только их создателям во время того же подключения к экземпляру SQL Server, когда таблицы были впервые созданы или на них была сделана ссылка. Локальные временные таблицы удаляются после того, как пользователь отсоединяется от экземпляра SQL Server. Глобальные временные таблицы видны любому пользователю и любому соединению после их создания и удаляются, когда все пользователи, ссылающиеся на таблицу, отключаются от экземпляра SQL Server.

105
ответ дан 4 November 2019 в 09:08
поделиться

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

временные таблицы только доступны в рамках сессии, которая создала их.

Глобальные временные таблицы : Иногда, можно хотеть составить временную таблицу, которая является доступными другими соединениями. В этом случае можно использовать глобальные временные таблицы.

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

0
ответ дан 4 November 2019 в 09:08
поделиться
  • Табличные переменные (DECLARE @t TABLE) видны только создающему их соединению и удаляются при завершении пакета или хранимой процедуры.

  • Локальные временные таблицы (CREATE TABLE #t) видны только тому соединению, которое их создает, и удаляются при завершении пакетной или хранимой процедуры. соединение, которое ее создает, и удаляются, когда соединение закрыто.

  • Глобальные временные таблицы (CREATE TABLE ##t) видны всем, и удаляются после закрытия всех соединений, которые на них ссылались.

  • Постоянные таблицы Tempdb (USE tempdb CREATE TABLE t) видны для всем, и удаляются при перезагрузке сервера.

316
ответ дан 4 November 2019 в 09:08
поделиться

Цитата из электронной документации:

Локальные временные таблицы видны только в текущем сеансе; глобальные временные таблицы видны всем сеансам.

Временные таблицы автоматически удаляются, когда они выходят за пределы области видимости, если они явно не удаляются с помощью DROP TABLE:

  • Локальная временная таблица, созданная в хранимой процедуре, автоматически удаляется после завершения хранимой процедуры. На таблицу могут ссылаться любые вложенные хранимые процедуры, выполняемые хранимой процедурой, создавшей таблицу. На таблицу не может ссылаться процесс, который вызвал хранимую процедуру, создавшую таблицу.
  • Все остальные локальные временные таблицы автоматически удаляются в конце текущего сеанса.
  • Глобальные временные таблицы автоматически удаляются, когда сеанс, создавший таблицу, завершается и все другие задачи перестают обращаться к ним. Связь между задачей и таблицей сохраняется только в течение всего срока действия одного оператора Transact-SQL. Это означает, что глобальная временная таблица удаляется по завершении последнего оператора Transact-SQL, который активно ссылался на таблицу при завершении сеанса создания.
11
ответ дан 4 November 2019 в 09:08
поделиться
Другие вопросы по тегам:

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