В настоящее время я пытаюсь настроить Azure Хранилище данных для последующего использования SSRS. Проблема возникла при попытке скопировать данные с нашего локального SQL сервера (SQL 2008 R2) с помощью (вставить в select ) и (выберите * в), следующая ошибка:
Msg 104455, Level 16, State 1, Line 1
USE statement is not supported to switch between databases. Use a new connection to connect to a different Database.
Сообщение 104467, уровень 16, состояние 1, строка 1
Принудительные уникальные ограничения не поддерживаются в Azure SQL Хранилище данных. Чтобы создать неисполнимое уникальное ограничение, вы должны включить синтаксис NOT ENFORCED как часть вашего оператора.
После этой ошибки я решил скопировать данные с помощью служб SSIS, создал пакет для передачи данных и после успешного завершения При инициализации и копировании части данных (иногда более 500 тыс. строк) мы получаем сообщение об ошибке, запуск никогда не завершается успешно, так как мы пытаемся скопировать только данные за 1 месяц, что составляет примерно 10 млн. строк, сообщение об ошибке (
[OLE DB Source [59]] Error: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005.
An OLE DB record is available. Source: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80004005 Description: "Protocol error in TDS stream".
An OLE DB record is available. Source: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80004005 Description: "Protocol error in TDS stream".
An OLE DB record is available. Source: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80004005 Description: "Protocol error in TDS stream".
An OLE DB record is available. Source: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80004005 Description: "Communication link failure".
An OLE DB record is available. Source: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80004005 Description: "TCP Provider: An existing connection was forcibly closed by the remote host.
".
На этот раз я предположил, что проблема связана с размером данных, поэтому мы манипулировали пакетом до go при l oop, копируя только 1000 строк за цикл, и снова повторялась та же ошибка.
После того, что выглядело как тупик, я перешел к окончательному решению, я использовал промежуточный сервер (который использует SQL 2016), я успешно скопировал данные с исходного сервера (который использует 2008 R2) после внедрения (Linked Server) ), но еще раз, когда я попытался скопировать данные из (SQL 2016) в Azure хранилище данных использовать я столкнулся с ошибкой,
Error message is (Msg 46706, Level 16, State 1, Line 24
Cursor support is not an implemented feature for SQL Server Parallel DataWarehousing TDS endpoint.)