Eliminar una BD existente y volverla a crear con script sql server

Iniciado por Aikanáro Anário, 8 Febrero 2012, 05:45 AM

0 Miembros y 1 Visitante están viendo este tema.

Aikanáro Anário

Como soy nuevo en SQL, necesito ir probando lo que hago. Esta vez estoy haciendo un ejercicio de mapeo para crear una BD a partir de un modelo ER. Pero como ya cree la BD, me dice que está creada y no puedo seguir probando.

Lo que hice fue poner lo siguiente al inicio del script sql:

Código (sql) [Seleccionar]

USE master
GO

IF exists (SELECT * FROM sysdatabases WHERE name='mapeo1')
DROP DATABASE mapeo1
GO

CREATE DATABASE mapeo1
GO

CREATE TABLE EMP(
...
.
.


Pero parece que no está funcionando, porque me da el siguiente error:
CitarMsg 2714, Level 16, State 6, Line 2
There is already an object named 'EMP' in the database.
Msg 2714, Level 16, State 6, Line 2
There is already an object named 'DEP' in the database.
Msg 2714, Level 16, State 6, Line 2
There is already an object named 'COURSE' in the database.
Msg 2714, Level 16, State 4, Line 2

Aunque no me da ese error con la última tabla que cree que se llama TAKES. ¿Qué hay malo?
Lo que faltaba en internet: http://binar10s.blogspot.com/

Shell Root

Juaz sólo tengo MySQL. Que resultado obtienes de la query,
Código (sql) [Seleccionar]
SELECT * FROM sysdatabases WHERE name='mapeo1'
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

Aikanáro Anário

Usando la BD master, esto es lo que obtengo:
Nota: la BD que creo (mapeo1) no tiene ninguna tupla, ningun dato.


name dbid sid mode status status2 crdate reserved category cmptlevel filename version
mapeo1 5 0x0105000000000005150000007F3BCDC635E6BA6460DB20DBEC030000 0 1073807369 1627389952 2012-02-08 00:52:25.363 1900-01-01 00:00:00.000 0 100 c:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\mapeo1.mdf NULL

Lo que faltaba en internet: http://binar10s.blogspot.com/

Carloswaldo

Tienes que poner un "USE mapeo1" después del CREATE DATABASE, te dice que ya existe el objeto porque lo has creado en la base de datos master.

Aikanáro Anário

Cita de: Carloswaldo en  8 Febrero 2012, 20:32 PM
Tienes que poner un "USE mapeo1" después del CREATE DATABASE, te dice que ya existe el objeto porque lo has creado en la base de datos master.

Pues sí, me ha funcionado, gracias.
Lo que faltaba en internet: http://binar10s.blogspot.com/