Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 аналог процедуры master.dbo.xp_delete_file для 2000  [new]
Ёжик25
Member

Откуда: оттуда
Сообщений: 360
Собственно сабж. Ну или так: как удалить файл средствами SQL 2000. Вариант с cmdshell не подходит.
26 сен 11, 16:44    [11337019]     Ответить | Цитировать Сообщить модератору
 Re: аналог процедуры master.dbo.xp_delete_file для 2000  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
ESP написать?
26 сен 11, 16:47    [11337047]     Ответить | Цитировать Сообщить модератору
 Re: аналог процедуры master.dbo.xp_delete_file для 2000  [new]
Ёжик25
Member

Откуда: оттуда
Сообщений: 360
Гавриленко Сергей Алексеевич,


уж простите за мою "ламерность", что такое ESP?
26 сен 11, 16:48    [11337060]     Ответить | Цитировать Сообщить модератору
 Re: аналог процедуры master.dbo.xp_delete_file для 2000  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Extended Stored Procedure, чем xp_delete_file и является.
26 сен 11, 16:48    [11337064]     Ответить | Цитировать Сообщить модератору
 Re: аналог процедуры master.dbo.xp_delete_file для 2000  [new]
Ёжик25
Member

Откуда: оттуда
Сообщений: 360
Гавриленко Сергей Алексеевич,

нет, вы знаете, боюсь моих знаний не достаточно будет для написания EPS. На 2005 master.dbo.xp_delete_file ссылается на файл XPStar90.DLL, скопировал файл на сервер, где стоит 2000, создал новую EPS и прицепил ее к этому файлу. При запросе

DECLARE
@mydate nvarchar(17),
@path nvarchar(100)
set @mydate = convert(varchar(20),getdate(),1) +' ' + convert(varchar(8),dateadd(hh,-1,getdate()),8)
set @path=N'E:\MSSQL2000\Backup\SystemDB\'
exec master.dbo.xp_delete_file 0, @path, N'bak', @mydate


выдает:

Msg 0, Level 16, State 0, Procedure xp_delete_file, Line 6
Cannot load the DLL D:\Program Files\Microsoft SQL Server\MSSQL\Binn\XPStar90.DLL, or one of the DLLs it references. Reason: 126(error not found).
26 сен 11, 17:17    [11337282]     Ответить | Цитировать Сообщить модератору
 Re: аналог процедуры master.dbo.xp_delete_file для 2000  [new]
Glory
Member

Откуда:
Сообщений: 104751
Ёжик25
На 2005 master.dbo.xp_delete_file ссылается на файл XPStar90.DLL

А на какие библиотеки ссылается в свою очередь XPStar90.DLL вы тоже посмотрели ?
26 сен 11, 17:19    [11337292]     Ответить | Цитировать Сообщить модератору
 Re: аналог процедуры master.dbo.xp_delete_file для 2000  [new]
Ёжик25
Member

Откуда: оттуда
Сообщений: 360
Glory,

нет, я не так глубоко знаю эти ДЛЛ. А как посмотреть?
26 сен 11, 17:32    [11337366]     Ответить | Цитировать Сообщить модератору
 Re: аналог процедуры master.dbo.xp_delete_file для 2000  [new]
Glory
Member

Откуда:
Сообщений: 104751
Ёжик25
нет, я не так глубоко знаю эти ДЛЛ. А как посмотреть?

Найти тул для просмотра зависимостей и посмотреть
26 сен 11, 17:36    [11337392]     Ответить | Цитировать Сообщить модератору
 Re: аналог процедуры master.dbo.xp_delete_file для 2000  [new]
Ёжик25
Member

Откуда: оттуда
Сообщений: 360
Ну вот все опять начинают умничать!))))) (в хорошем смысле)

Я еще раз повторяюсь, я не программист, и рыться в дебрях всевозможных библиотек или написать EPS с нуля не смогу. Я установил сервер 2000 и по аналогии перенес джобы с 2005. Джоб с удалением старых баков не сработал, т.к. по умолчанию нет этой master.dbo.xp_delete_file в 2000. Поэтому я и спрашиваю, как без глубоких знаний заменить эту процедуру - если такое сделать нельзя - что ж, так и скажите, будем думать, как выйти из ситуации другим способом!

заранее спасибо
26 сен 11, 17:45    [11337449]     Ответить | Цитировать Сообщить модератору
 Re: аналог процедуры master.dbo.xp_delete_file для 2000  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Ёжик25
Ну вот все опять начинают умничать!))))) (в хорошем смысле)

Я еще раз повторяюсь, я не программист, и рыться в дебрях всевозможных библиотек или написать EPS с нуля не смогу. Я установил сервер 2000 и по аналогии перенес джобы с 2005. Джоб с удалением старых баков не сработал, т.к. по умолчанию нет этой master.dbo.xp_delete_file в 2000. Поэтому я и спрашиваю, как без глубоких знаний заменить эту процедуру - если такое сделать нельзя - что ж, так и скажите, будем думать, как выйти из ситуации другим способом!

заранее спасибо
Настройте Maintenance Plan и не мучайте ни себя, ни нас.

Сообщение было отредактировано: 26 сен 11, 17:54
26 сен 11, 17:54    [11337487]     Ответить | Цитировать Сообщить модератору
 Re: аналог процедуры master.dbo.xp_delete_file для 2000  [new]
Ёжик25
Member

Откуда: оттуда
Сообщений: 360
Гавриленко Сергей Алексеевич,


ну прошу прощения за мучения. Дело в том что требование владельца базы - обойтись без мейнтейса и смдшела! Только джобы. Вот и думаю, что делать!
26 сен 11, 17:56    [11337493]     Ответить | Цитировать Сообщить модератору
 Re: аналог процедуры master.dbo.xp_delete_file для 2000  [new]
Glory
Member

Откуда:
Сообщений: 104751
Ёжик25
Я еще раз повторяюсь, я не программист, и рыться в дебрях всевозможных библиотек или написать EPS с нуля не смогу

Хочу одну кнопку - "Чтоб все работало!"
Поэтому "скопировал файл на сервер, где стоит 2000, создал новую EPS и прицепил ее к этому файлу."

Ёжик25
что ж, так и скажите, будем думать, как выйти из ситуации другим способом!

Использовать xp_cmdshell
26 сен 11, 17:57    [11337497]     Ответить | Цитировать Сообщить модератору
 Re: аналог процедуры master.dbo.xp_delete_file для 2000  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31985
Ёжик25
Я еще раз повторяюсь, я не программист, и рыться в дебрях всевозможных библиотек или написать EPS с нуля не смогу. Я установил сервер 2000 и по аналогии перенес джобы с 2005. Джоб с удалением старых баков не сработал, т.к. по умолчанию нет этой master.dbo.xp_delete_file в 2000. Поэтому я и спрашиваю, как без глубоких знаний заменить эту процедуру - если такое сделать нельзя - что ж, так и скажите, будем думать, как выйти из ситуации другим способом!
Нужно просто обратиться к разработчику с просьбой предоставить версию для 2000-го. Или установить на 2005-й. Или обратиться к программисту.

Зачем мучаться?
26 сен 11, 18:07    [11337550]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить