Diferencia entre revisiones de «DEV CLASES/INDICES»

De Pragma Wiki
Ir a la navegación Ir a la búsqueda
(Página creada con « --------------------------------------------- Los índices (ver [https://learn.microsoft.com/es-es/sql/relational-databases/indexes/indexes?view=sql-server-ver16 Índices]) son estructuras de datos que mejoran la velocidad de las operaciones, permitiendo un rápido acceso a los registros de una tabla en una base de datos. Al aumentar drásticamente la velocidad de acceso, se suelen usar sobre aquellos campos sobre los cuales se hacen frecuentes búsquedas. La única…»)
 
Sin resumen de edición
 
(No se muestran 2 ediciones intermedias del mismo usuario)
Línea 1: Línea 1:
=Descripción=
Los índices (ver [https://learn.microsoft.com/es-es/sql/relational-databases/indexes/indexes?view=sql-server-ver16 Índices]) son estructuras de datos que mejoran la velocidad de las operaciones, permitiendo un rápido acceso a los registros de una tabla en una base de datos. Al aumentar drásticamente la velocidad de acceso, se suelen usar sobre aquellos campos sobre los cuales se hacen frecuentes búsquedas.
La tabla '''pCLASE_INDICE''' ((ok) Clases, índices) permite definir índices sobre una tabla.


---------------------------------------------
<div style="border: 1px solid red; background-color: #ffcccc; padding: 1px;">
Los índices (ver [https://learn.microsoft.com/es-es/sql/relational-databases/indexes/indexes?view=sql-server-ver16 Índices]) son estructuras de datos que mejoran la velocidad de las operaciones, permitiendo un rápido acceso a los registros de una tabla en una base de datos. Al aumentar drásticamente la velocidad de acceso, se suelen usar sobre aquellos campos sobre los cuales se hacen frecuentes búsquedas.
<strong>  Advertencia:</strong><br>
  - Esta clase opera por ahora exclusivamente sobre la clase que define el índice.
  - Si el índice se define sobre una clase con derivadas, solo se aplicará a la clase de base.
  - También opera sobre tablas creadas directamente sobre la base de datos.
</div>


La única tabla que se usa actualmente para definir índices es:
=Estructura=
*[[DEV CLASES/INDICES|(ok) Clases, índices (pCLASE_INDICE)]] define el índice y los campos que lo conforman.
[[Category:MANUAL/DESARROLLADOR]]
[[Category:DEV CLASES]]
La única clase usada para definir índices es ésta.


Las siguientes dos tablas pertenecen al viejo esquema de definición de índices y se encuentran obsoletas, se documentan en el estado en que se encuentran:
Las siguientes dos tablas pertenecen al viejo esquema de definición de índices y se encuentran obsoletas, se documentan en el estado en que se encuentran:
*[[DEV CLASES/INDICES OBSOLETO|Clases, índices adicionales (prxclases_indice)]] cabecera del viejo esquema de definición de índices.
*[[DEV CLASES/INDICES OBSOLETO|Clases, índices adicionales (prxclases_indice)]] cabecera del viejo esquema de definición de índices.
*[[DEV CLASES/CAMPOS INDICES OBSOLETO|Clases, índices adicionales, campos (prxclases_indiceC)]] lista de campos del viejo esquema de definición de índices.
*[[DEV CLASES/CAMPOS INDICES OBSOLETO|Clases, índices adicionales, campos (prxclases_indiceC)]] lista de campos del viejo esquema de definición de índices.
---------------------------------------------
 
=[[QUEESESTO/IDENTIDAD|Identidad]]=
* Tabla: '''pCLASE_INDICE'''
* Tipo: '''TABLA'''
* Catálogo: '''[[SYS OBJETOS]]'''
=[[QUEESESTO/LISTADECAMPOS|Lista de campos]]=
{| class="wikitable"
|-
! Columna !! Campo físico !! Campo lógico !! Atributo !! Descripción !! Etiquetas !! Definición !! Observaciones
|-
|1||FCLASE||Clase||[[VARCHAR(64)|VARCHAR(64)]]||Caracteres de longitud variable hasta 64 caracter/es||KEY,REQ,VIS,INS||[[DEV CLASES/INDICES|pCLASE_INDICE]]||Código de la clase que define el índice.
|-
|2||FCODIGO||Codigo||[[VARCHAR(64)|VARCHAR(64)]]||Caracteres de longitud variable hasta 64 caracter/es||KEY,REQ,VIS,INS||[[DEV CLASES/INDICES|pCLASE_INDICE]]||Código del índice.
|-
|3||FDESCRIPCION||Descripcion||[[VARCHAR(64)|VARCHAR(64)]]||Caracteres de longitud variable hasta 64 caracter/es||REQ,VIS,INS,UPD||[[DEV CLASES/INDICES|pCLASE_INDICE]]||Descripción del índice.
|-
|4||FACTIVO||Activo||[[BIT|BIT]]||Campo lógico, admite 1, 0 y NULL||REQ,VIS,INS,UPD||[[DEV CLASES/INDICES|pCLASE_INDICE]]||Marcar para indicar que el índice se encuentra activo, desmarcarlo elimina el índice.
|-
|5||FCAMPOS||Campos||[[VARCHAR(128)|VARCHAR(128)]]||Caracteres de longitud variable hasta 128 caracter/es||VIS,INS,UPD||[[DEV CLASES/INDICES|pCLASE_INDICE]]||Ingresar la lista de campos que componen el índice, separados por comas.
|-
|6||FADD||FADD||[[VARCHAR(512)|VARCHAR(512)]]||Caracteres de longitud variable hasta 512 caracter/es||||[[COMPUTADO|COMPUTADO]]||Campo calculado que genera el comando para crear el índice.
|-
|7||FDROP||FDROP||[[VARCHAR(512)|VARCHAR(512)]]||Caracteres de longitud variable hasta 512 caracter/es||||[[COMPUTADO|COMPUTADO]]||Campo calculado que genera el comando para eliminar el índice.
|-
|}
=Observaciones adicionales sobre los campos=
===Campos FCLASE y FCODIGO===
Los nombres de los índices creados usando esta tabla se conforma con:
*Contenido del campo '''FCLASE''' + '''_IDX_''' + Contenido del campo '''FCODIGO'''.
 
Por ejemplo, un índice creado sobre la tabla '''RTCAB''' y el campo '''FORICODIGO''' se llamará '''RTCAB_IDX_FORICODIGO'''.
 
===Campo FACTIVO===
Los índices pueden ser creados directamente en el motor de SQL SERVER, pero esta clase permite crear y eliminar este índice simplemente seteando el campo FACTIVO:
*Cuando ese campo está seteado a verdadero el índice se crea.
*Cuando ese campo está seteado a falso el índice se elimina.
 
===Campo FADD===
Es un campo calculado que arma el código SQL necesario para crear el índice.
 
===Campo FDROP===
Es un campo calculado que arma el código SQL necesario para eliminar el índice.
=Relaciones=
=Triggers=

Revisión actual - 17:11 25 mar 2025

Descripción

Los índices (ver Índices) son estructuras de datos que mejoran la velocidad de las operaciones, permitiendo un rápido acceso a los registros de una tabla en una base de datos. Al aumentar drásticamente la velocidad de acceso, se suelen usar sobre aquellos campos sobre los cuales se hacen frecuentes búsquedas.

La tabla pCLASE_INDICE ((ok) Clases, índices) permite definir índices sobre una tabla.

Advertencia:

 - Esta clase opera por ahora exclusivamente sobre la clase que define el índice.
 - Si el índice se define sobre una clase con derivadas, solo se aplicará a la clase de base.
 - También opera sobre tablas creadas directamente sobre la base de datos.

Estructura

La única clase usada para definir índices es ésta.

Las siguientes dos tablas pertenecen al viejo esquema de definición de índices y se encuentran obsoletas, se documentan en el estado en que se encuentran:

Identidad

  • Tabla: pCLASE_INDICE
  • Tipo: TABLA
  • Catálogo: SYS OBJETOS

Lista de campos

Columna Campo físico Campo lógico Atributo Descripción Etiquetas Definición Observaciones
1 FCLASE Clase VARCHAR(64) Caracteres de longitud variable hasta 64 caracter/es KEY,REQ,VIS,INS pCLASE_INDICE Código de la clase que define el índice.
2 FCODIGO Codigo VARCHAR(64) Caracteres de longitud variable hasta 64 caracter/es KEY,REQ,VIS,INS pCLASE_INDICE Código del índice.
3 FDESCRIPCION Descripcion VARCHAR(64) Caracteres de longitud variable hasta 64 caracter/es REQ,VIS,INS,UPD pCLASE_INDICE Descripción del índice.
4 FACTIVO Activo BIT Campo lógico, admite 1, 0 y NULL REQ,VIS,INS,UPD pCLASE_INDICE Marcar para indicar que el índice se encuentra activo, desmarcarlo elimina el índice.
5 FCAMPOS Campos VARCHAR(128) Caracteres de longitud variable hasta 128 caracter/es VIS,INS,UPD pCLASE_INDICE Ingresar la lista de campos que componen el índice, separados por comas.
6 FADD FADD VARCHAR(512) Caracteres de longitud variable hasta 512 caracter/es COMPUTADO Campo calculado que genera el comando para crear el índice.
7 FDROP FDROP VARCHAR(512) Caracteres de longitud variable hasta 512 caracter/es COMPUTADO Campo calculado que genera el comando para eliminar el índice.

Observaciones adicionales sobre los campos

Campos FCLASE y FCODIGO

Los nombres de los índices creados usando esta tabla se conforma con:

  • Contenido del campo FCLASE + _IDX_ + Contenido del campo FCODIGO.

Por ejemplo, un índice creado sobre la tabla RTCAB y el campo FORICODIGO se llamará RTCAB_IDX_FORICODIGO.

Campo FACTIVO

Los índices pueden ser creados directamente en el motor de SQL SERVER, pero esta clase permite crear y eliminar este índice simplemente seteando el campo FACTIVO:

  • Cuando ese campo está seteado a verdadero el índice se crea.
  • Cuando ese campo está seteado a falso el índice se elimina.

Campo FADD

Es un campo calculado que arma el código SQL necesario para crear el índice.

Campo FDROP

Es un campo calculado que arma el código SQL necesario para eliminar el índice.

Relaciones

Triggers