¿Al igual que en SQl hay tablas maestras las hay en access?. Lo que yo quiero hacer es un mantenimiento de access desde web, esto es, poder entrar y saber que tablas hay en la base de datos, el poder sacar los registros de cada una y poderlos modificar. Hasta ahora lo que he podido hacer es sabiendo la tabla, sacar el número de columnas con rs.fields.count, el recorrerlas, sacar de que tipo son, pero aun en ese sentido, me falta saber las relaciones y cuales son las que están definidas como claves.
¿Hay alguna forma de hacerlo?
Si trabajas con ASP posiblemente habrás recurrido a ADO. Si amplias la información sobre esta herramienta, observarás que puedes trabajar con los objetos de una base de datos Access como si de SQL se tratará. A continuación te adjunto la ayuda sobre el uso de ADO en VBScript (Lenguaje que supongo que utilizas para crear tus páginas asp). ADO en VBScript Crear un proyecto de ADO VBScript no admite bibliotecas de tipos, por lo que no es necesario hacer referencia a ADO en los proyectos. Por lo tanto, no se admite ninguna característica asociada, como la conclusión de la línea de comandos. Además, de forma predeterminada, en VBScript no se definen las constantes enumeradas de ADO. Sin embargo, ADO proporciona dos archivos de inclusión que contienen las siguientes definiciones, que se utilizan con VBScript: En las secuencias de comandos del servidor, utilice Adovbs.inc que, de forma predeterminada, se instala en la carpeta c:\Archivos de programa\Archivos comunes\System\ado\. En las secuencias de comandos del cliente, utilice Adcvbs.inc que, de forma predeterminada, se instala en la carpeta c:\Archivos de programa\Archivos comunes\System\ado\. Puede copiar y pegar las definiciones de las constantes de estos archivos en páginas ASP o, si escribe secuencias de comandos del servidor, copiar el archivo Adovbs. Inc a una carpeta de un sitio Web y hacer referencia a él desde una página ASP de la siguiente forma: <!--#include File="adovbs.inc"--> Crear objetos de ADO en VBScript En VBScript, no se puede usar la instrucción Dim para asignar objetos a un tipo específico. Además, VBScript no admite la sintaxis New que se utiliza con la instrucción Dim en Visual Basic para Aplicaciones. En su lugar hay que utilizar la llamada a la función CreateObject: Dim Rs1 Set Rs1 = Server.CreateObject( "ADODB.Recordset" ) Ejemplos de VBScript El código siguiente es un ejemplo genérico de programación de la capa del servidor con VBScript en un archivo de página Active Server (ASP): <% @LANGUAGE="VBSCRIPT" %> <% Option Explicit %> <!--#include File="adovbs.inc"--> <HTML> <BODY BGCOLOR="White" topmargin="10" leftmargin="10"> <!-- Your ASP Code goes here --> <% Dim Source Dim Connect Dim Rs1 Source = "SELECT * FROM Authors" Connect = "Provider=sqloledb;Data Source=srv;" & _ "Initial Catalog=Pubs;User Id=sa;Password=;" Set Rs1 = Server.CreateObject( "ADODB.Recordset" ) Rs1.Open Source, Connect, adOpenForwardOnly Response.Write("Success!") %> </BODY> </HTML> La documentación de ADO incluye ejemplos más específicos de VBScript. Para obtener más información, consulte Ejemplos de código de ADO en Microsoft Visual Basic Scripting Edition. Diferencias entre VBScript y Visual Basic En muchos sentidos, el uso de ADO con VBScript es muy similar al uso de ADO con Visual Basic, incluso en la forma de utilizar la sintaxis. Sin embargo, hay algunas diferencias importantes: VBScript sólo admite el tipo de datos Variant, que puede contener tipos distintos de datos. Los datos necesarios se pueden almacenar en un tipo de datos Variant y funcionarán perfectamente debido a la conversión de tipos que realiza VBScript: reconoce el tipo que ADO necesita y convierte el valor del tipo Variant en consecuencia. En VBScript no se puede utilizar on error goto <etiqueta>. VBScript admite algunas de las funciones integradas en Visual Basic como Msgbox, Date e IsNumeric. Sin embargo, dado que VBScript es un subconjunto de Visual Basic, no admite todas las funciones integradas. Por ejemplo, VBScript no admite la función Format y las funciones de entrada y salida de archivos. Amplia y profundiza en ADO y descubrirás lo que buscas.