Access - obtener clave principal

 
Vista:

obtener clave principal

Publicado por floydian (1 intervención) el 29/06/2005 18:28:16
Hola !!

Desde un asp, tengo que saber cual es el nombre del campo clave de una tabla pasada como parametro. Alguien sabe como se hace ?? Existe alguna consulta Sql para obtener el nombre del campo clave de una tabla ??
Gracias !!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Obtener el nombre del campo clave de una tabla pasada como parámetro en ASP

Publicado por Alejandro (4142 intervenciones) el 06/06/2023 16:49:26
No hay una consulta SQL estándar para obtener directamente el nombre del campo clave de una tabla en SQL. Sin embargo, puedes obtener esta información utilizando las funciones y consultas proporcionadas por el sistema de gestión de bases de datos que estés utilizando. A continuación, te mostraré cómo hacerlo en el caso de Access y SQL Server.

Para obtener el nombre del campo clave de una tabla en Access, puedes utilizar el siguiente código en ASP:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Dim conn, rs
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "tu_cadena_de_conexion"
 
Set rs = conn.OpenSchema(4, Array(Null, Null, "nombre_de_la_tabla"))
 
If Not rs.EOF Then
    Dim clave
    clave = rs.Fields("COLUMN_NAME").Value
    Response.Write "El campo clave de la tabla es: " & clave
End If
 
rs.Close
conn.Close
Set rs = Nothing
Set conn = Nothing

Asegúrate de reemplazar "tu_cadena_de_conexion" con la cadena de conexión a tu base de datos y "nombre_de_la_tabla" con el nombre de la tabla de la cual deseas obtener el campo clave.

Para SQL Server, puedes utilizar el siguiente código en ASP:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Dim conn, rs
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "tu_cadena_de_conexion"
 
Set rs = conn.Execute("SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_NAME = 'nombre_de_la_tabla'")
 
If Not rs.EOF Then
    Dim clave
    clave = rs.Fields("COLUMN_NAME").Value
    Response.Write "El campo clave de la tabla es: " & clave
End If
 
rs.Close
conn.Close
Set rs = Nothing
Set conn = Nothing

Al igual que antes, asegúrate de reemplazar "tu_cadena_de_conexion" con la cadena de conexión a tu base de datos y "nombre_de_la_tabla" con el nombre de la tabla de la cual deseas obtener el campo clave.

Espero que esta solución te sea útil. ¡Buena suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar