Связанная база данных SQL Server, дающая “непоследовательные метаданные” ошибка

Посмотрите этот пост , он дает действительно хороший фрагмент кода для того, что делать при обнаружении сенсорных устройств или что делать, если вызывается событие touchstart:

$(function(){
  if(window.Touch) {
    touch_detect.auto_detected();
  } else {
    document.ontouchstart = touch_detect.surface;
  }
}); // End loaded jQuery
var touch_detect = {
  auto_detected: function(event){
    /* add everything you want to do onLoad here (eg. activating hover controls) */
    alert('this was auto detected');
    activateTouchArea();
  },
  surface: function(event){
    /* add everything you want to do ontouchstart here (eg. drag & drop) - you can fire this in both places */
    alert('this was detected by touching');
    activateTouchArea();
  }
}; // touch_detect
function activateTouchArea(){
  /* make sure our screen doesn't scroll when we move the "touchable area" */
  var element = document.getElementById('element_id');
  element.addEventListener("touchstart", touchStart, false);
}
function touchStart(event) {
  /* modularize preventing the default behavior so we can use it again */
  event.preventDefault();
}

15
задан Lucas 27 October 2010 в 21:37
поделиться

2 ответа

У меня такое случалось несколько раз. Единственный обходной путь, который я нашел, заключался в использовании OPENQUERY.

SELECT * FROM OPENQUERY(LinkedServerName, 'SELECT * FROM DBName.Schema.Table')

Кроме того, выбранный вами вариант, который вы разместили выше, имеет неправильное название из четырех частей (возможно, это просто опечатка, но я не был уверен). Это должно быть LinkedServerName.DBName.SchemaName.TableName

38
ответ дан 1 December 2019 в 00:26
поделиться
Server: Msg 7356, Level 16, State 1, Line 1 

OLE DB provider 'MSDASQL' supplied inconsistent metadata for a column. 
Metadata information was changed at execution time.

Если вы используете синтаксис имени из четырех частей для запроса данных из базы данных связанного сервера, вы можете получить это сообщение об ошибке . Чтобы обойти эту проблему, можно использовать синтаксис OPENQUERY для запроса данных из базы данных связанного сервера. Вы можете включить флаг трассировки 7300, чтобы получать более подробную информацию об этом сообщении об ошибке. Чтобы включить флаг трассировки 7300, выполните следующую инструкцию Transact-SQL:

DBCC TRACEON(7300)
8
ответ дан 1 December 2019 в 00:26
поделиться
Другие вопросы по тегам:

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