Copiar DB pero Vacia con un SP

16/04/2004 - 18:35 por Juan Carlos Aranda | Informe spam
Hola, de antemano agradezco su valiosa ayuda.

Desde mi aplicacion quisiera decirle a sql-server que haga una copia de una
base de datos.
Esta copia se quiero que la genere con las tablas vacias, mandandole
previamente el nombre de la base de datos origen la ubicacion de los
archivos etc. Ya logre hacer que realize una copia con data, pero necesito
tambien poder generar una copia vacia. Todo esto desde un Store Procedure.

He pensado en varias opciones:

1) Que desde un sp crear un scrip de la Bd origen y luego ejecutarlo con
osql.
Pero no se como crear un script desde un sp.

2) Talvez exista algo asi como un trucate database, que reinicie la base
de datos.

Bueno, si alguien me ayuda le agradecere bastante.


Saludos

Preguntas similare

Leer las respuestas

#1 Juan Carlos Aranda
16/04/2004 - 18:51 | Informe spam
Gracias, es una buena idea.

Solo que tengo tablas con campos autonumericos y al darle un delete a las
tablas no reiniciaria los campos, y no puedo darle un truncate table a las
tablas por que tienen integridad referencial y cuando estan relacionadas
sql-server no permite truncarlas.

Pero voy a considerar esa posiblidad, pero si me pueden seguir ayudando a
pensar como hacerlo mejor, les agradecere.

Saludos
Respuesta Responder a este mensaje
#2 Maximiliano D. A.
16/04/2004 - 18:54 | Informe spam
Hola, yo me pregunto una cosa:

Si generas los Script de las tablas con tu Entherprise y luego los ejecutas?
esto te hara todo y vacio :-)
yo lo hago asi, tengo los Script y luego una mini aplicacion que arme en VB
donde me pregunta

Servidor
Conexion
y Scipt

y con esto hago todas estas cosas para no usar el Osql ;)

Bye


Salu2
Maxi

Buenos Aires Argentina
Desarrollador Microsoft 3 Estrellas .NET

MSN:
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Juan Carlos Aranda" escribió en el mensaje
news:
Hola, de antemano agradezco su valiosa ayuda.

Desde mi aplicacion quisiera decirle a sql-server que haga una copia de


una
base de datos.
Esta copia se quiero que la genere con las tablas vacias, mandandole
previamente el nombre de la base de datos origen la ubicacion de los
archivos etc. Ya logre hacer que realize una copia con data, pero necesito
tambien poder generar una copia vacia. Todo esto desde un Store Procedure.

He pensado en varias opciones:

1) Que desde un sp crear un scrip de la Bd origen y luego ejecutarlo


con
osql.
Pero no se como crear un script desde un sp.

2) Talvez exista algo asi como un trucate database, que reinicie la


base
de datos.

Bueno, si alguien me ayuda le agradecere bastante.


Saludos







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.655 / Virus Database: 420 - Release Date: 08/04/2004
Respuesta Responder a este mensaje
#3 Juan Carlos Aranda
16/04/2004 - 19:07 | Informe spam
La cuestion es que la aplicacion debe realizar todo el trabajo, sin usar el
Enterprise Manager, ya que esta montada con MSDE. Y yo voy a estarle
cargando service pack a la base de datos y a la aplicacion. Entonces la
estructura que tenga la base de datos es la que funciona con el ejecutable,
y hay una funcionalidad en el sistema en donde el usuario puede decir que
quiere hacer una copia de la base de datos con informacion o vacias. Y tengo
que tomar la ultima version que es la que tiene la base de datos Actual. Si
me explico?

Bueno les agradesco que me sigan ayudando.

Saludos
Respuesta Responder a este mensaje
#4 Maximiliano D. A.
16/04/2004 - 19:18 | Informe spam
ahh entiendo, vos no tenes los Script no? lo que buscas es un clon pero solo
de estructura sin saberla verdad?

Me temo que si es esto lo que buscas deberias de ver la forma de armarte por
script las estructuras de la BDD con todos sus objetos.

Creo recordar que en la web de Miguel (www.portalsql.com) hay un articulo
sobre el tema.

Bye


Salu2
Maxi

Buenos Aires Argentina
Desarrollador Microsoft 3 Estrellas .NET

MSN:
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Juan Carlos Aranda" escribió en el mensaje
news:e2%
La cuestion es que la aplicacion debe realizar todo el trabajo, sin usar


el
Enterprise Manager, ya que esta montada con MSDE. Y yo voy a estarle
cargando service pack a la base de datos y a la aplicacion. Entonces la
estructura que tenga la base de datos es la que funciona con el


ejecutable,
y hay una funcionalidad en el sistema en donde el usuario puede decir que
quiere hacer una copia de la base de datos con informacion o vacias. Y


tengo
que tomar la ultima version que es la que tiene la base de datos Actual.


Si
me explico?

Bueno les agradesco que me sigan ayudando.

Saludos







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.655 / Virus Database: 420 - Release Date: 08/04/2004
Respuesta Responder a este mensaje
#5 Javier Loria
16/04/2004 - 19:18 | Informe spam
Hola Juan Carlos:
Puedes revisar el SQL-DMO en los libros en linea para ver si es algo que
desearias usar.
Basicamente te permitira manejar un modelo de objetos con collecciones,
y puedes tomar a un objeto tipo DataBase, Table, etc. y llamar a su metodo
Script(), que te genera el codigo. Que luego podrias guardar y correr.
O incluso puedes "copiar" objetos de un lado al otro. De manera
BaseDatos.Tables.Add(objTable).
Revisa la documentacion en linea si es algo que te gustaria usar, y si
tienes preguntas hay varios participantes en este foro que tienen
experiencia con DMO.

Saludos,

Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.

Juan Carlos Aranda escribio:
Hola, de antemano agradezco su valiosa ayuda.

Desde mi aplicacion quisiera decirle a sql-server que haga una copia
de una base de datos.
Esta copia se quiero que la genere con las tablas vacias, mandandole
previamente el nombre de la base de datos origen la ubicacion de los
archivos etc. Ya logre hacer que realize una copia con data, pero
necesito tambien poder generar una copia vacia. Todo esto desde un
Store Procedure.

He pensado en varias opciones:

1) Que desde un sp crear un scrip de la Bd origen y luego
ejecutarlo con osql.
Pero no se como crear un script desde un sp.

2) Talvez exista algo asi como un trucate database, que reinicie
la base de datos.

Bueno, si alguien me ayuda le agradecere bastante.


Saludos
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida