Я хочу сгенерировать скрипты для объектов базы данных, например.SQL Server: как сгенерировать объектные скрипты без DMO/SMO?
- столы
- просмотров
- хранимые процедуры
- функции
С:
не установлены на новую установку:
- Windows XP
- для Windows Vista
- Windows 7
они не являются распространяемым, они не вариант (он будет работать на машине клиента).
(EDIT: Это выглядит так, как будто на самом деле SMO redistributable по состоянию на сегодняшний день.)
Есть ли исходный код, который преобразует ВЫБИРАЕТ из системных таблиц в связанные сценарии?
я начну нас прочь с псевдокоде, что скриптам хранимые процедуры, представления, триггеры или определяемые пользователем функции:
String GetStoredProcedureScript(String storedProcedureName)
{
return GetHelpText(storedProcedureName);
}
String GetViewScript(String viewName)
{
return GetHelpText(viewName);
}
String GetTriggerScript(String triggerName)
{
return GetHelpText(storedProcedureName);
}
String GetUserDefinedFunctionScript(String userDefinedFunctionName)
{
return GetHelpText(userDefinedFunctionName);
}
Все, которые могут внутренне использовать один вспомогательная функция:
String GetHelpText(String objectName)
{
String szQuery = 'EXECUTE sp_helptext '+QuotedStr(objectName);
String sql := '';
using (Recordset rs = connection.Execute(szQuery))
{
while not rs.EOF do
{
sql = sql+rs['text'];
rs.Next;
}
}
return sql;
}
Редактировать: Спасибо servicesharvest316 за указание sp_helptext
. Вот почему у меня есть класс, который абстрагирует эти вещи.
Какую версию SQL Server вы используете? – RickNZ
SQL Server 2000 –