una - SQL Server: ¿cómo SELECCIONAR la ruta de instalación?
no hay instancias o caracteristicas compartidas de sql server 2014 (4)
Ejecute lo siguiente para inspeccionar el registro y encontrar la clave adecuada.
Declare @Path as varchar(100);
Set @Path = NULL
Exec master..xp_regread ''HKEY_LOCAL_MACHINE'', ''SOFTWARE/Microsoft/Microsoft SQL Server/70/Tools/ClientSetup'', ''SQLPath'', @Path OUTPUT
Select @Path as [Sql Server 7.0 path]
Set @Path = NULL
Exec master..xp_regread ''HKEY_LOCAL_MACHINE'', ''SOFTWARE/Microsoft/Microsoft SQL Server/80/Tools/ClientSetup'', ''SQLPath'', @Path OUTPUT
Select @Path as [Sql Server 2000 path]
Set @Path = NULL
Exec master..xp_regread ''HKEY_LOCAL_MACHINE'', ''SOFTWARE/Microsoft/Microsoft SQL Server/90/Tools/ClientSetup'', ''SQLPath'', @Path OUTPUT
Select @Path as [Sql Server 2005 path]
Set @Path = NULL
Exec master..xp_regread ''HKEY_LOCAL_MACHINE'', ''SOFTWARE/Microsoft/Microsoft SQL Server/100/Tools/ClientSetup'', ''SQLPath'', @Path OUTPUT
Select @Path as [Sql Server KATMAI path]
Sé que hay una variable, función o procedimiento almacenado que puede usar para encontrar la ruta en la que está instalado SQL Server:
p.ej:
c:/Program Files/Microsoft SQL Server/MSSQL.7/MSSQL
o
m:/CustomInstance/MSSQL
En realidad, espero SELECCIONAR para la ruta de respaldo predeterminada. Pero como dudo que eso exista, simplemente insertaré / BACKUP en la ruta de instalación y la llamaré lo suficientemente cerca.
Actualizar uno
select filename from sysaltfiles
where name = db_name()
Server: Msg 208, Level 16, State 1, Line 1
Invalid object name ''sysaltfiles''.
select filename from master.dbo.sysaltfiles
where name = db_name()
filename
----------------
(0 row(s) affected)
que pasa cuando ejecutas esto
select filename from sysaltfiles
where name = db_name()
cambie db_name () a ''maestro'' si quiere ver dónde vive la base de datos maestra
Cómo seleccionar la ruta de instalación
Nota : xp_instance_regread no lee la clave de registro que especifique, sino que convierte esa ruta clave en la ruta adecuada para la instancia específica de SQL Server en la que se está ejecutando. En otras palabras: xp_regread falla donde xp_instance_regread tiene éxito.
Directorio de instalación de SQL Server
declare @rc int, @dir nvarchar(4000)
exec @rc = master.dbo.xp_instance_regread
N''HKEY_LOCAL_MACHINE'',
N''Software/Microsoft/MSSQLServer/Setup'',
N''SQLPath'',
@dir output, ''no_output''
select @dir AS InstallationDirectory
Directorio de respaldo de SQL Server
declare @rc int, @dir nvarchar(4000)
exec @rc = master.dbo.xp_instance_regread
N''HKEY_LOCAL_MACHINE'',
N''Software/Microsoft/MSSQLServer/MSSQLServer'',
N''BackupDirectory'',
@dir output, ''no_output''
select @dir AS BackupDirectory
CREATE FUNCTION Fn_sqlservertoolsdir()
returns NVARCHAR(4000)
AS
BEGIN
DECLARE @rc INT,
@dir NVARCHAR(4000),
@key NVARCHAR(4000)
SET @key = N''Software/Microsoft/Microsoft SQL Server/' + Replace(Cast(Serverproperty(''ProductVersion'') AS CHAR(2)), ''.'', '''') + ''0'' + ''/Tools/ClientSetup''
EXEC @rc = master.dbo.Xp_regread
N''HKEY_LOCAL_MACHINE'',
@key,
N''Path'',
@dir output,
''no_output''
RETURN @dir
END