Я пытаюсь выполнить следующий синтаксис в транзакции, но выдает ошибку: -
это скрипт, который я выполняю в транзакции: -
IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))
-- full text search is installed. Run the necessary procedures
BEGIN
declare @dbName nvarchar(128)
select @dbName = DB_Name()
exec('ALTER DATABASE [' + @dbName + '] SET RECOVERY SIMPLE')
if(0 = DATABASEPROPERTY(DB_Name(),'IsFulltextEnabled'))
BEGIN
-- Full text is installed but not enabled on the Database. Enable that
EXEC sp_fulltext_database 'enable'
END
-- Check if there are current tables in full text search. If yes, remove them
if(1 = INDEXPROPERTY(Object_id('Blog'),'PK_Blog','IsFulltextKey'))
BEGIN
-- Drop the full text index
EXEC sp_fulltext_table 'Blog','drop'
END
END
Я получаю следующую ошибку: -
Оператор ALTER DATABASE не разрешен в транзакции с несколькими операторами.
Процедура sys.sp_fulltext_table не может быть выполнена внутри транзакции.
Процедура sys.sp_fulltext_table не может быть выполнена внутри транзакции.
Процедура sys.sp_fulltext_table не может быть выполнена внутри транзакции.
Ребята, у вас есть идеи ??
Edit: -
Я хочу знать, есть ли выход для этого. Я пытаюсь изменить тип данных столбцов в базе данных, и они включены для fulltextsearch, поэтому я хочу, чтобы выше было сделано как-то. (