Symptomen
Neem het volgende scenario. In Microsoft SQL Server 2005 kunt u een database terugzet vanaf een back-up. Vervolgens probeert u een volledige-tekstcatalogus openen met behulp van SQL Server Management Studio. In dit geval verschijnt het volgende foutbericht weergegeven:
De eigenschap IsAccentSensitive is niet beschikbaar voor FullTextCatalog ' [catalogusnaam]'. Deze eigenschap kan niet voor dit object bestaat of mogelijk niet worden opgehaald vanwege onvoldoende toegangsrechten. (Microsoft.SqlServer.Smo)
Bovendien wordt een null-waarde wanneer u de query op de gegevens over de eigenschap AccentSensitivity van de volledige-tekstcatalogus met de functie FULLTEXTCATALOGPROPERTY Transact-SQL. Bijvoorbeeld: u kunt een Transact-SQL-instructie die resembels met de volgende instructie query op de gegevens over de
De eigenschap AccentSensitivity .
select FULLTEXTCATALOGPROPERTY('<CatalogName>','AccentSensitivity')
Wanneer u deze instructie gebruikt, wordt een null-waarde. Wanneer u de informatie over de eigenschap AccentSensitivity direct uit de weergave van de volledige-tekstcatalogus query uitvoert, geeft SQL Server de juiste informatie. Bijvoorbeeld kunt u de volgende Transact-SQL-instructie voor de query op de gegevens.
select * from sys.fulltext_catalogs
Dit probleem kan optreden als de volgende voorwaarden voldaan wordt:
-
U back-up van een database en verwijder vervolgens de database.
-
De database heeft een volledige-tekstcatalogus.
-
Voordat u de database terugzet, moet u een of meer databases maken. Dus wordt de vorige database-ID gebruikt door de nieuwe databases.
Oorzaak
Dit probleem treedt op omdat een verkeerde volledige-tekstcatalogus naam voor de bestaande volledige-tekstcatalogus van SQL Server worden opgeslagen wanneer u de database terugzet.
Tijdelijke oplossing
Om dit probleem te omzeilen, kunt u de teruggezette database veilig loskoppelen. De teruggezette database vervolgens opnieuw. Ga hiervoor als volgt te werk:
-
Open SQL Server Management Studio en vervolgens verbinding maken met het exemplaar van SQL Server 2005.
-
Voer de volgende instructie om de database met de volledige-tekstcatalogus ontkoppelen:
sp_detach_db 'dbname'
GOOpmerking De tijdelijke aanduiding dbname vertegenwoordigt de naam van de database.
-
Weer aan de database voor het opnieuw instellen van de catalogus-ID. Neem hiervoor een van de volgende acties, afhankelijk van de positie van de volledige-tekstcatalogi:
-
Volledige-tekstcatalogi bevindt zich in de standaardlocatie, sluit de database door het opgeven van het pad van het bestand. U kunt bijvoorbeeld de database koppelen door een van de volgende instructies uit te voeren:
-
sp_attach_db dbname, 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\dbname_data.mdf'
GO -
CREATE DATABASE dbname ON
(FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\dbname.mdf')
FOR ATTACH
GO
-
-
Als volledige-tekstcatalogi bevinden zich op verschillende locaties, kunt u de database door te geven van elke catalogusnaam en de locatie van de catalogus. U kunt bijvoorbeeld de database koppelen door de volgende instructie uit te voeren:
CREATE DATABASE dbname ON
(FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\dbname_data.mdf'),
(FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\dbname_log.ldf'),
--optional folder name of FTS catalog 1
(FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\FTDATA\Catalog_1'),
--optional folder name of FTS catalog 2
(FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\FTDATA\Catalog_2')
FOR ATTACH;
GO
-
Status
Microsoft heeft bevestigd dat dit probleem kan optreden in de Microsoft-producten die worden vermeld in de sectie 'Van toepassing op'.