usar studio management como .net visual-studio-2012 localdb

.net - studio - sql server 2017 localdb



¿Cómo crear manualmente un archivo mdf para que localdb lo use? (4)

Lo sé, vieja pregunta, pero me parece que la siguiente manera sigue siendo relevante y rápida. Estos son los pasos completos, pero en realidad solo la última parte es realmente relevante:

Prerrequisitos:

  1. Motor MS Sql LocalDb
  2. MS Sql Server Management Studio

Pasos:

  1. Abrir el símbolo del sistema
  2. Ejecute la SqlLocalDb info para listar las instancias de LocalDb instaladas actualmente. Debe haber al menos v11.0 para Sql Server 2012 / Visual Studio 2012 o MSSQLLocalDB para Sql Server 2014 / Visual Studio 2015
  3. Abra Sql Server Management Studio, o muestre el cuadro de diálogo Connect si ya se está ejecutando
  4. Use el nombre del servidor (localdb)/v11.0 o (localdb)/MSSQLLocalDB , lo que le interese. Seleccione Autenticación de Windows
  5. Crear una nueva consulta
  6. Pegue la siguiente plantilla, adaptando su ruta y sus nombres según sea necesario:

    CREATE DATABASE __YourDbName__ ON ( NAME=''__YourDbName__'', FILENAME=''YourDrive:/Your/path/to/data/files/__YourDbName__.mdf'')

  7. Ejecutar consulta

  8. Actualizar lista de bases de datos de Object Explorer

En el Explorador de objetos, ahora debería ver el DB recién creado, mientras que en el Explorador de Windows, ahora debería ver los archivos .mdf y .ldf recién creados en la ruta especificada.

HTH

Estoy configurando algunas pruebas unitarias para probar el trabajo realizado con una base de datos. Me gustaría usar localdb v11 pero primero necesito crear la base de datos. ¿Cómo exactamente hago esto?

simplemente conectando con (localdb)v11 en sql Management Studio me conecta a la base de datos que (supongo) está en C:/Users/George/ . ¿Cómo especifico uno nuevo?

El código usa ADO.Net manual, no Entity Framework, por lo que yo sé, no puedo confiar en él para simplemente crear la base de datos.


No estoy seguro de lo que quiere decir con "manualmente". Agregaré una opción usando Visual Studio 2013 y LocalDb:

Abra el Explorador del servidor, haga clic con el botón derecho en Conexiones de datos, seleccione Crear nueva base de datos de SQL Server. Para "Nombre del servidor" use "(LocalDB) / v11.0".

Hay otra opción, como se describe here pero requiere la instalación de herramientas de datos de SQL Server. Una versión de las instrucciones para Visual Studio 2012 también está available .

Como también menciona SQL Server Management Studio, puede simplemente conectarse a la instancia de LocalDb y hacer clic con el botón secundario en Bases de datos y luego Crear, de la manera estándar. Es más o menos una instancia de SQL Server regular y todas las operaciones estándar funcionarán como siempre.

La creación de la base de datos también puede realizarse, obviamente, desde el código de la aplicación, pero eso requiere configurar los permisos de base de datos adecuados. Dependiendo de su entorno, puede ser o no una buena idea.


Si está buscando (como yo) una forma de hacerlo fuera de su código, puede considerar usar un script .bat para hacer eso. Lo mantengo en la solución como un archivo .txt que puedo usar cuando necesito configurar el entorno de desarrollo nuevamente.

LocalDB y SQLCmd

Este script supone que LocalDB está instalado. Todavía no he podido encontrar información clara al respecto, pero parece que se puede instalar con Visual Studio 2012 y 2015 si está utilizando el marco de entidad. Si este no es el caso, puede instalarlo desde un instalador independiente o desde la página de descarga rápida de SQL Server (puede elegirla como la descarga que desea. Más detalles aquí: ¿Cómo instalar localdb por separado?

SQLCmd se puede descargar de la misma manera desde el paquete de características SQLServer, busque SQLCmdlnUtility.msi. Aquí está el link para la versión 2012.

Es posible que deba cambiar el directorio LocalDbDir y SQLCmdDir si no tiene la misma versión que yo.

guión

:: Script to Create Local DB Instance and a database ::echo setting variables - Default Server is v11 but it may be useful to evolve in a server instance of your own... SET localdDbDir=C:/Program Files/Microsoft SQL Server/120/Tools/Binn SET sqlCmdDir=C:/Program Files/Microsoft SQL Server/120/Tools/Binn SET SRV_NAME=your-dev-srv SET DB_NAME=your-dev-db SET DB_PATH=C:/CurDev/Temp echo Creates the localDB server instance pushd "%localdDbDir%" :: uncomment those lines if you want to delete existing content ::SqlLocalDb stop %SRV_NAME% ::SqlLocalDb delete %SRV_NAME% SqlLocalDb create %SRV_NAME% SqlLocalDb start %SRV_NAME% popd echo Create the database intance pushd "%sqlCmdDir%" sqlcmd -S "(localdb)/%SRV_NAME%" -Q "CREATE DATABASE [%DB_NAME%] ON PRIMARY ( NAME=[%DB_NAME%_data], FILENAME = ''%DB_PATH%/%DB_NAME%_data.mdf'') LOG ON (NAME=[%DB_NAME%_log], FILENAME = ''%DB_PATH%/%DB_NAME%_log.ldf'');" popd echo completed

¡Espero que esto ayude!


Solo use la sentencia CREATE DATABASE

SqlConnection connection = new SqlConnection(@"server=(localdb)/v11.0"); using (connection) { connection.Open(); string sql = string.Format(@" CREATE DATABASE [Test] ON PRIMARY ( NAME=Test_data, FILENAME = ''{0}/Test_data.mdf'' ) LOG ON ( NAME=Test_log, FILENAME = ''{0}/Test_log.ldf'' )", @"C:/Users/George" ); SqlCommand command = new SqlCommand(sql, connection); command.ExecuteNonQuery(); }