Copy table

15/11/2005 - 05:46 por Karlos Traveceras | Informe spam
Mis estimados:

Estoy trabajando con tablas de sql 2000 y por medio manipulo la informacion
por medio de sqlcommands... insert update into.. etc..

ahora me veo en la necesidad de copiar tablas en tiempo de ejecucion y
dejarlas con otro nombre.. dentro de la misma base de datos..

y por mas q le he buscado.. no he podido hacerle..

les pongo el codigo si de algo sirve

de antemano muchas gracias

Public CadenaConexion As String = "data source=TRAVECERAS; Initial
Catalog=T-Tiger; integrated security=SSPI;persist security info=True"

dbConexion = New Data.SqlClient.SqlConnection(CadenaConexion)

dbConexion.Open()

cmdtext = "CREATE TABLE A_empresas SELECT * FROM empresas "

Dim cmdsql As New SqlCommand(cmdtext, dbConexion)
cmdsql.ExecuteNonQuery()
 

Leer las respuestas

#1 SoftJaén
15/11/2005 - 13:57 | Informe spam
"Karlos Traveceras" escribió:

me veo en la necesidad de copiar tablas en tiempo de ejecucion y
dejarlas con otro nombre.. dentro de la misma base de datos..




Hola, Carlos:

Si solamente deseas crear una nueva tabla, con la estructura y los datos (no
los índices) de otra tabla existente, simplemente tienes que ejecutar una
consulta SQL de creación de tabla mediante la instrucción «SELECT ... INTO».
Para ello, puedes utilizar el método «ExecuteNonQuery» para ejecutar la
siguiente consulta:

cmdtext = "SELECT * INTO A_empresas FROM [empresas]"

Si de camino deseas obtener el número de registros que se han copiado,
ejecuta el comando de la siguiente manera:

Dim cmdsql As New SqlCommand

With cmdsql
.CommandText = cmdtext
.CommandType = CommandType.Text
.Connection = dbConexion

' Ejecutamos el comando
Dim regAfectados As Integer
regAfectados = .ExecuteNonQuery()

' Mostramos el número de registros afectados
MessageBox.Show(regAfectados.ToString)
End With

Para evitar que se puede producir alguna excepción, ejecuta el código dentro
de un bloque Try ... End Try.


Un saludo

Enrique Martínez
[MS MVP - VB]

Nota informativa: La información contenida en este mensaje, así como el
código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin
garantías de ninguna clase, y no otorga derecho alguno. Usted asume
cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o
sugerido en el presente mensaje.

Preguntas similares