Como saber si una Tabla existe con Ado
Hola,
Estoy trabajando con MS SQL server 2000 y Delphi 6, conectado con ADO y necesito crear algunas tablas, pero antes debo verificar que estas no existan. Como saber si una tabla existe en una base de datos conectado con ADO. Saludos |
Lanza la consulta siguiente:
Si la tabla con nombre 'NombreTabla' existe te devolverá un registro, si no existe te devolverá 0 registros.
te devuelve un registro por cada tabla que existe en la Base de Datos. |
Lo probe pero me arroja el siguiente Error : Invalid Object name 'Sysobjects'
Saludos |
Yo he probado a poner un ADOQuery apuntando a una Base de Datos de SQLServer 2000 con Delphi 6 y con la siguiente SQL:
y funciona perfectamente. Lo he conectado a un DBGrid y muestra todos los registros. |
Estube probando : Select id from SysObjects where xType='U' and Name='NombreTabla'
donde especifique el nombre de la tabla y me dio el anterior problema 'NombreTabla' = 'COMUNAS' Quiero saber si la tabla COMUNAS existe en la base de datosa |
Ésta consulta debería funcionar; Lánzala y luego pregunta si ADOQuery.EOF es True.
|
Es esactamente lo que realizo y me arroja el error entes explicado
Gracias |
Tal vez no tienes permiso para acceder a esas tablas.
Desde la consola de SQl, cuando despliegas las tablas de una Base de Datos debes ver las tablas de sistema (empiezan todas por sys...): syscolumns, syscomments, sysdepends, sysobjects,... Si no las ves es pq no tienes permisos; Revisa las opciones de la Base de Datos y los permisos del usuario con que te conectas. Dentro de las opciones de la BD hay un apartado que habla de permisos (Acceso restringido, sólo lectura,...) revísalo. |
La franja horaria es GMT +2. Ahora son las 14:40:18. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi