SoloCodigo

Programación General => Visual FoxPro => Mensaje iniciado por: Asthar2010 en Martes 4 de Mayo de 2010, 06:20

Título: Existencia de una tabla en base de datos sql server.
Publicado por: Asthar2010 en Martes 4 de Mayo de 2010, 06:20
Hola, he buscado como lograr saber por codigo si una tabla existe en una base de datos sql server y he llegado hasta esto:



oConexion = CreateObject("ADODB.Connection")
With oConexion
.ConnectionString = "dsn=Profit_a;uid=sa;pwd=051069ds"
.Open
ENDWITH


oTablaAuxiliar = oConexion.Execute ("Select 'InvTemp' from SysObjects where xType='U'",oConexion)



---- hasta acá va bien ya que esa seleccion dentro de SySObjects es correcta, ahora, se me enrolla el trompo cuando trato de saber si oTablaAuxiliar tiene un valor que pueda decirme por ejemplo 0 =no existe, 1=existe....



he probado con los siguientes codigos y no logro dar con un valor que me identifique ello:

aca en el objeto recordcount() siempre me da valor -1 este creada, con registros, o no exista la tabla, donde esta mi error? he probado otros metodos y tampoco me funcionan una pequeña mano me caeria bien....Gracias.

IF (otablaAuxiliar.recordcount()=-1) then


* ** no existe la tabla.... ahora a crearla...


oConexion.Execute("create table InvTemp(Cod char(10),Can char(8),existe char(1))",oConexion)


*** agrego un registro en para evitar errores posteriores del ADO


oConexion.Execute("insert into InvTemp values('2V','2','2')",oConexion)


ELSE


* *existe la tabla, ahora a borrar sus datos...


* oConexion.Execute("delete * ",oConexion)


MESSAGEBOX( "Ya existe la tabla InventarioTemporal ")


endif


oconexion.close