Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Visszaadja az adatbázis aktuális vardecimal tárolóformátumának állapotát, vagy engedélyezi az adatbázist vardecimális tárolási formátumhoz. Az SQL Server 2008 (10.0.x) és későbbi verziókban a felhasználói adatbázisok mindig engedélyezettek. Azonban mivel a sorszintű tömörítés ugyanazokat a célokat éri el, a vardecimális tárolási formátum elavult. Az adatbázisok engedélyezése a vardecimális tárolóformátumhoz csak SQL Server 2005 (9.x) verzióban szükséges.
Fontos
Az adatbázis vardecimális tárolóformátumának megváltoztatása befolyásolhatja a mentést és helyreállítást, az adatbázis tükrözését, sp_attach_dba naplóküldést és a replikációt.
Szemantika
sp_db_vardecimal_storage_format
[ [ @dbname = ] N'dbname' ]
[ , [ @vardecimal_storage_format = ] 'vardecimal_storage_format' ]
[ ; ]
Arguments
[ @dbname = ] N'dbname'
Az adatbázis neve, amelynek tárolási formátumát meg kell változtatni.
[ @vardecimal_storage_format = ] 'vardecimal_storage_format'
Megadja, hogy a vardecimal tárolási formátum engedélyezve van-e.
@vardecimal_storage_formata varchar(3), alapértelmezett értéke NULL.
@vardecimal_storage_format lehet ON vagy OFF. Ha adatbázis nevet adnak meg, de @vardecimal_storage_format kihagyják, a megadott adatbázis aktuális beállítása visszatér.
Ez az érv nem hat az SQL Server 2008 (10.0.x) és későbbi verziókra.
Kódértékek visszaadása
0 (sikeres) vagy 1 (hiba).
Eredményhalmaz
Ha az adatbázis-tároló formátumot nem lehet megváltoztatni, sp_db_vardecimal_storage_format hiba jelenik meg. Ha az adatbázis már a megadott állapotban van, a tárolt eljárásnak nincs hatása.
Ha a @vardecimal_storage_format érv nincs megadva, sp_db_vardecimal_storage_format visszaadja az oszlopokat Database Name és a Vardecimal State.
Megjegyzések
sp_db_vardecimal_storage_format visszaadja a vardecimális állapotot, de nem tudja megváltoztatni a vardecimális állapotot.
sp_db_vardecimal_storage_format a következő esetekben megbukik:
- Az adatbázisban aktív felhasználók vannak.
- Az adatbázis lehetővé van a tükrözésre.
- Az SQL Server kiadása nem támogatja a vardecimal tárolóformátumot.
Ahhoz, hogy a vardecimal tárolóformátum állapotát , OFFaz adatbázist egyszerű helyreállítási modellre kell állítani. Ha egy adatbázist egyszerű helyreállításra állítanak, a naplólánc megszakad. Végezzen teljes adatbázis-mentést, miután beállítottad a vardecimális tárolási formátum állapotot .OFF
Az állapot megváltoztatása OFF sikertelen, ha vannak táblák, amelyek vardecimális adatbázis tömörítést használnak. A tábla tárolási formátumának megváltoztatásához használd a sp_tableoption. Annak meghatározására, hogy egy adatbázisban mely táblák használnak vardecimális tárolási formátumot, használja a OBJECTPROPERTY függvényt, és keresse meg a TableHasVarDecimalStorageFormat tulajdonságot, ahogy az alábbi példában látható.
USE AdventureWorks2022;
GO
SELECT name,
object_id,
type_desc
FROM sys.objects
WHERE OBJECTPROPERTY(object_id, N'TableHasVarDecimalStorageFormat') = 1;
GO
Példák
A következő kód lehetővé teszi az adatbázis tömörítését AdventureWorks2025 , megerősíti az állapotot, majd tömöríti a tizedes és numerikus oszlopokat a Sales.SalesOrderDetail táblázatban.
USE master;
GO
EXECUTE sp_db_vardecimal_storage_format 'AdventureWorks2022', 'ON';
GO
-- Check the vardecimal storage format state for
-- all databases in the instance.
EXECUTE sp_db_vardecimal_storage_format;
GO
USE AdventureWorks2022;
GO
EXECUTE sp_tableoption 'Sales.SalesOrderDetail', 'vardecimal storage format', 1;
GO