Recorrer tablas de una base de datos y usuarios
Hola
Estoy buscando la forma de acceder a la estructura de una tabla existente para añadir algún campo. Es fácil si la tabla no existe y la quieres crear
DIM Tabla AS Table
Tabla = Conexion.Tables.Add("Empleados")
WITH Tabla
.Fields.Add("Codigo",db.Integer)
.Fields.Add("Nombre", db.String, 15)
.Fields.Add("Ape1", db.String, 15)
.Fields.Add("Ape2", gb.String, 15)
.PrimaryKey = ["codigo"]
.Update
END WITH
¿Qué pasa si yo quiero añadir un campo en una tabla ya existente?
Tendré que obtener un objeto tabla para poder acceder a sus campos.
Esto no funciona
Dim Tabla as table
Tabla=Conexion.tables("Empleados")
Y no veo el método con el que poder acceder a ella.
¿Además al recorrer tablas como puedo ver cuales son del sistema y cuales no?
Naturalmente que puedo hacerlo si me voy al motor de la base de datos y en mysql por ejemplo hago un exec alter table pero busco una solución transparente al motor de base de datos de tal forma que pueda cambiar de base sin que haya que cambiar código.
Tampoco veo como añadir un usuario y crearle privilegios para acceso a una base de datos concreta. quiero decir que si creo un usuario con Conexion.Users.add puedo crearlo como administrador del gestor de datos (y de todas las bases de datos) o como administrador de las bases de datos. Yo quiero crear un administrador de bases de datos (con todos los derechos en esa base y ninguno en las demás) y un usuario con acceso select, update, delete e insert nada mas.
No encuentro un procedimiento genérico en gambas para poder acceder a ello. Debo irme a la base de datos a hacer un exec grant
¿Alguna idea?