Sql 是否可以在不指定数据库名称的情况下对当前数据库执行收缩

Sql 是否可以在不指定数据库名称的情况下对当前数据库执行收缩,sql,sql-server-2008,tsql,Sql,Sql Server 2008,Tsql,我们正在连接C#中的数据库,然后在其上运行一些sql脚本 我需要能够在不指定名称的情况下收缩当前数据库 我们在程序中没有数据库名称,我们只是获得了连接并运行脚本 这是我开始的: ALTER DATABASE SSSIndexes SET RECOVERY SIMPLE WITH NO_WAIT GO DBCC SHRINKFILE(N'SSSIndexes_Log', 1) <-- my issue is here GO ALTER DATABASE SSSINDEX设置恢复简单,无

我们正在连接C#中的数据库,然后在其上运行一些sql脚本

我需要能够在不指定名称的情况下收缩当前数据库

我们在程序中没有数据库名称,我们只是获得了连接并运行脚本

这是我开始的:

ALTER DATABASE SSSIndexes SET RECOVERY SIMPLE WITH NO_WAIT
GO
DBCC SHRINKFILE(N'SSSIndexes_Log', 1)   <-- my issue is here
GO
ALTER DATABASE SSSINDEX设置恢复简单,无需等待
去

DBCC SHRINKFILE(N'SSSIndexes_Log',1)您可以通过调用以下命令获取当前数据库并对其进行收缩:

DECLARE @dbName VARCHAR(50)

SELECT @dbName = DB_NAME()

DBCC SHRINKDATABASE(@dbName)
要仅执行日志文件,请执行以下操作:

DECLARE @logName VARCHAR(50)

SELECT @logName = name FROM sys.master_files WHERE database_id = db_id() AND type = 1

DBCC SHRINKFILE(@logName, 1)

如果我想缩小原木,我会怎么做?这不会缩小数据库吗?