2016-02-25 5 views
0

Я пытаюсь использовать SSIS, чтобы просто вставлять 3 строки в таблицу ежедневно. Пакет отлично работает в VS. Когда я пытаюсь запланировать пакет, он выдает ошибку с привилегией. Владелец пакета имеет полные права на таблицу. Код SQL работает в пакете DTS в течение многих лет.Scheduled ssis insert row

insert into tasks values(
     'Daily Change','Noel',convert(varchar(10),getdate(),101)+ ' 12:00',0, 
      null,null,convert(varchar(10),getdate(),101)+ ' 11:30', convert(varchar(10),getdate(),101)+ ' 12:00', null, null, null, null); 

insert into tasks values(
     'Daily Change','Noel', convert(varchar(10),getdate(),101)+ ' 17:00',0, 
      null,null,convert(varchar(10),getdate(),101)+ ' 16:30', convert(varchar(10),getdate(),101)+ ' 17:00', null, null, null, null); 

insert into tasks values(
     'Daily Change','Noel', convert(varchar(10),getdate(),101)+ ' 10:00',0, 
      null,null,convert(varchar(10),getdate(),101)+ ' 09:00', convert(varchar(10),getdate(),101)+ ' 10:00', null, null, null, null); 

Любые идеи ??

Вот все сообщение об ошибке:

Исполнено как пользователь: домен \ пользователь. Microsoft (R) SQL Server Execute Package Utility Версия 10.0.5500.0 для 32-разрядных
Copyright (C) Microsoft Corp. 1984-2005. Все права защищены. Создано: 7:08:03 AM
Ошибка: 2016-02-26 07: 08: 04.13 Код: 0xC0016016 Источник:
Описание: Не удалось расшифровать защищенный узел XML «DTS: Пароль» с ошибкой 0x8009000B «Ключ не действителен для использования в указанном состоянии. ". У вас нет прав доступа к этой информации. Эта ошибка возникает при наличии криптографической ошибки. Убедитесь, что имеется правильный ключ. Конец Ошибка Ошибка: 2016-02-26 07: 08: 04.45 Код: 0xC0202009
Источник: имя_пакета Менеджер соединений «Поставщик Microsoft OLE DB для SQL Server»
Описание: Код ошибки SSIS DTS_E_OLEDBERROR. Произошла ошибка OLE DB. Код ошибки: 0x80040E4D.
Имеется запись OLE DB. Источник: «Поставщик Microsoft OLE DB для SQL Server» Hresult: 0x80040E4D Описание: «Ошибка входа в систему для пользователя». ». Конец Ошибка Ошибка: 2016-02-26 07: 08: 04.46 Код: 0xC00291EC
Источник: Выполнение SQL-задачи undefined Выполнение SQL-задачи
Описание: Не удалось получить соединение «Поставщик Microsoft OLE DB для SQL Server». Соединение может быть настроено неправильно или у вас могут не быть прав доступа к этому соединению.
Ошибка завершения DTExec: Выполнение пакета возвращает DTSER_FAILURE (1). Начато: 7:08:03 Закончено: 7:08:04 AM
Истек: 0.78 секунд. Выполнение пакета не выполнено. Не удалось выполнить шаг., 00: 00: 01,0,0 ,,,, 0

ответ

0

Если вы запланировали пакет с SQL-агентом, пакет запускается под логином SQL-агента, а не с владельцем пакета. Вы должны предоставить логину агента SQL необходимые разрешения.

+0

Как узнать, какой аккаунт SQL Server Agent используется? – user1879417

+0

Если у вас нет администратора базы данных, вы можете спросить, я бы запустил трассировку профилировщика и посмотрел, какой логин вызывает команды при выполнении задания. –

+0

У учетной записи, на которой работает SQL Server, есть роль sysadmin в базе данных – user1879417