Простой процесс в SQL 2005 для переноса всех моих хранимых процедур в отдельные файлы .sql. Я хотел бы переместить их в VSS, но я не слишком взволнован перспективой щелчка по каждому из них, чтобы получить источник, сбросив его в текстовый файл и т. Д.Сохраненные процедуры для .sql-файлов
ответ
В SQL Management Studio щелкните правой кнопкой мыши по базе данных, перейдите к задачам -> Сгенерировать скрипты, пройдите мастер. Одна из страниц позволит вам сценарий каждого объекта в свой собственный файл.
Вы можете запустить этот выбор:
select
O.name, M.definition
from
sys.objects as O
left join
sys.sql_modules as M
on O.object_id = M.object_id
where
type = 'P'
и вы получите имя и исходный код хранимых процедур. Упрощенный самый простой способ, как поместить его в файлы, находится в некотором «классическом» языке, например, C#, java и т. Д.
Если вы хотите обновить всю базу данных, Microsoft имеет мастер публикации базы данных SQL Server (вы можете скачать его here). В обзоре говорится, что есть прямая интеграция с Visual Studio, но я не использовал его лично, чтобы ручаться за то, насколько он хорош (или плох).
Я написал инструмент, который я назвал SMOscript, который имеет возможность создать один файл .sql для каждого объекта базы данных.
Он использует библиотеку SMO SQL Server для генерации сценариев CREATE и DROP.
Попробуйте использовать Sql Server SMO. Пример приведен ниже:
//C:\Program Files\Microsoft SQL Server\{version}\SDK\Assemblies\
using Microsoft.SqlServer;
using Microsoft.SqlServer.Server;
using Microsoft.SqlServer.Management.Smo;
using Microsoft.SqlServer.Management.Common;
using System.Data.SqlClient;
string sqlConnectionString="";
string databaseName="";
var Connection = new SqlConnection(sqlConnectionString);
Connection.Open();
int counter = 0;
var db= new Server(new ServerConnection(Connection)).Databases[databaseName];
foreach (var item in db.StoredProcedures.OfType<StoredProcedure>())
{
if (item.IsSystemObject == false)
{
using (TextWriter writer = new StreamWriter(item.Name+".sql", false))
{
writer.WriteLine(item.TextHeader + item.TextBody);
}
}
}
Вы также можете использовать следующий скрипт для создания базы данных, выбранные хранимой процедуры скриптов в отдельном файле .sql, файлы будут создавать по имени процедуры.
Использование динамического запроса и курсор, вы можете сделать это следующим образом:
DECLARE @name varchar(100)
DECLARE @Definition varchar(max)
DECLARE @sql varchar(300)
CREATE TABLE TEMPTABLE (ID INT IDENTITY(1,1), def varchar(max))
DECLARE script CURSOR
FOR
SELECT OBJECT_NAME(SYS.SQL_MODULES.OBJECT_ID), [DEFINITION] FROM
SYS.SQL_MODULES INNER JOIN SYS.OBJECTS ON
SYS.OBJECTS.OBJECT_ID = SYS.SQL_MODULES.OBJECT_ID
WHERE SYS.OBJECTS.TYPE='P'
OPEN script
FETCH NEXT FROM script INTO @name, @Definition
WHILE @@FETCH_STATUS = 0
BEGIN
FETCH NEXT FROM script INTO @name, @Definition
INSERT INTO TEMPTABLE VALUES(@definition)
SET @Sql = ('BCP "SELECT TOP 1 def FROM TEMPTABLE ORDER BY ID DESC" queryout "C:\' + @name + '.sql" -c -T')
EXEC XP_CmdShell @Sql
END
CLOSE script
DEALLOCATE script
DROP TABLE TEMPTABLE
- 1. Сохраненные процедуры для сложных запросов
- 2. Сохраненные процедуры в Hive
- 3. Сохраненные процедуры в Python
- 4. CLR Сохраненные процедуры
- 5. Сохраненные процедуры с аргументами
- 6. Сохраненные процедуры MSSQL2005
- 7. Сохраненные процедуры против Linq2Entities
- 8. Сохраненные процедуры Вставка проблем
- 9. Сохраненные процедуры PHP
- 10. Сохраненные процедуры и функции
- 11. Сохраненные процедуры в EF4.4
- 12. Linq2Sql vs Сохраненные процедуры
- 13. Сохраненные процедуры Vs. Просмотров
- 14. Сохраненные процедуры SQL Server
- 15. Сохраненные процедуры обратного проектирования
- 16. Сохраненные процедуры базы данных
- 17. Сохраненные процедуры и PDO
- 18. Сохраненные процедуры и ОПТИМИЗАЦИЯ ДЛЯ НЕИЗВЕСТНОГО
- 19. Сохраненные процедуры в Python для PostgreSQL
- 20. Сохраненные процедуры для Oracle SQL Developer
- 21. Сохраненные процедуры против привязки параметров
- 22. Azure Data Factory Сохраненные процедуры
- 23. Сохраненные процедуры aganist SQL injection
- 24. Сохраненные процедуры в структуре сущности
- 25. Сохраненные процедуры не работают (System.TypeInitializationException)
- 26. Сохраненные процедуры Производительность в MySql
- 27. MySQL Сохраненные процедуры Возврат Выберите
- 28. Сохраненные процедуры Возврат Mysql Php
- 29. Mysql Сохраненные процедуры - Возвращаемое сообщение
- 30. Сохраненные процедуры и обновление EDMX
Ницца! Не знал об этом. – VVS 2008-12-03 17:59:02