1

Я работаю над попыткой спасти как можно больше от поврежденной базы данных. Я могу запросить таблицы, но не видеть их метаданные (свойства, сценарий как ...) - все эти действия приводят кВосстановление хранимой процедуры из поврежденной базы данных

стол ... не существует на сервере

ошибок при это ясно, так как Select * from ... работает.

Я был в состоянии создать новую базу данных и получить как схемы и данных, выполнив:

select * 
into newdB.dbo.table 
from corruptdb.dbo.table 

Уф!

Теперь о хранимых процедурах. Я могу выполнить их, но я не могу изменить или сценарий. Любые предложения относительно того, как их сохранить?

Благодаря

+0

Посмотрите на это http://stackoverflow.com/questions/10451146/what-is-the-sql-server-system-table-that-contains-information-about-stored-proce –

+3

SELECT определение FROM sys. sql_modules ... –

+0

Это! Все остальное терпит неудачу, но это спасло день. Спасибо, Аарон Бертран. – user948060

ответ

0

Попробуйте sp_helptext, чтобы увидеть, если вы можете получить источник хранимой процедуры назад.

(см. http://msdn.microsoft.com/en-us/library/ms176112.aspx).

Если это не сработает, возможно, что db (хотя и не гарантировано - он поврежден, в конце концов!) Не имеет источника хранимой процедуры.

exec sp_helptext 'some_procedure` 

Конечно, правильный ответ: восстановить из резервной копии.

+0

Нет, это привело к Msg 605, уровень 21, состояние 3, параметры процедуры $, строка 2 Ошибка при попытке получить логическую страницу (1:56) в базе данных 7. Он относится к блоку распределения 0 не до 281474980642816. – user948060

Смежные вопросы