Leer tablas desde BD MDF

Hola experto, tengo una base de datos SQL SERVER, pero tengo solo los archivos MDF y LDF. No tengo el motor SQL, solo Windows 98 y Access 2000. ¿Puedo leer las tablas con estas herramientas?. Si no es así que me recomiendas (sin tener que tener el motor). Chao y gracias

1 Respuesta

Respuesta
1
Sin el motor no hay manera de ver los datos.
Puedes utilizar algún servidor al que tengas acceso o instalártelo.
Para ver los datos (utilizando un servidor), primero tienes que adjuntar los ficheros. Para ello puedes utilizar el procedimiento almacenado sp_attach_db (mira en la ayuda, seguro que te explica mejor que yo como funciona)
Hola de nuevo, ¿tengo qué tener el windows NT server o que otra clase de windows me sirve para instalar el motor SQL Server?. Gracias
He estado muy liado, ¿sigues necesitanto ayuda?
Hola, si la verdad es que voy a instalar el NT server 4.0 en un PC y lugo voy a instalar el SQL Server para leer la DB. ¿Necesito un NT 4.0 cualquiera o tiene que ser con algún service pack en especial? Una vez que tenga esto voy a seguir tu procedimiento del sp_attach_db, ya que la DB no la tengo como backup sino como archivos sueltos copiados directos a un CD. Gracias
Necesitas al menos SP5, creo que el último es el sp6, que también te vale.
Te puedes encontrar con un problema y es que los usuarios que tienes en la base de datos corresponden a inicios de sesión del otro servidor. Los inicios de sesión están en la master, por tanto puedes tener problemas. Lo mejor es que, una vez hayas utilizado sp_attach_db, borres todos los usuarios y cambies el propietario. Te adjunto un script que utilizo yo para estos casos, asegurate que estas conectado a la base de datos correcta:
--Borramos todos los usuarios existentes. Pueden provenir de una copia de seguridad que
--Se ha restaurado sin restaurar la master. Son usuarios que no se corresponden con
--Ningún inicio de sesión
Declare @name varchar(2000)
DECLARE usuarios CURSOR LOCAL
FOR
select NAME from sysusers where status <> 0 and name<>'dbo'
open usuarios
FETCH NEXT FROM usuarios
INTO @NAME
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC sp_revokedbaccess @NAME
PRINT 'Eliminando el usuario ' + @NAME + '...'
FETCH NEXT FROM usuarios
INTO @NAME
END
CLOSE usuarios
DEALLOCATE usuarios
GO
--Ponemos como propietario el sa
sp_changedbowner 'sa'
GO

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas