Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да разбера кои таблици имат данни във файл в SQL Server?

Ако приемем, че сте преместили таблицата и т.н., вероятно ще трябва да изпълните:

DBCC SHRINKFILE (MyLogicalFile, EMPTYFILE) --EMPTYFILE is the important bit!!

Вижте DBCC SHRINKFILE

За проверка (това е изрязване и поставяне на използван от мен скрипт):

SELECT
    ds.[name] AS LogicalFileName,
    OBJECT_NAME(p.object_id) AS Thing,
    SUM(au.total_pages) / 128.0 AS UsedMB,
    df.size / 128 AS FileSizeMB,
    100.0 * SUM(au.total_pages) / df.size AS PercentUsed
FROM
    sys.database_files df
    JOIN
    sys.data_spaces ds ON df.data_space_id = ds.data_space_id 
    JOIN
    sys.allocation_units au ON ds.data_space_id = au.data_space_id 
    JOIN 
    sys.partitions p ON au.container_id = p.hobt_id
WHERE
    OBJECTPROPERTYEX(p.object_id, 'IsMSShipped') = 0
GROUP BY
    ds.[name], OBJECT_NAME(p.object_id), df.size
ORDER BY
    ds.[name]



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server 2008:Колко безопасна при срив е CLR съхранена процедура, която зарежда неуправлявани библиотеки

  2. Разрешаването на имена в низа за връзка е неуспешно от мрежовия дял

  3. Съкращаване на SQL Server и ограничение 8192

  4. SQL групира подобни стойности заедно

  5. възстановяването на база данни е неуспешно с преместване