Más información...

Componente MagiaSQLConnection

·        Permite manejar más fácilmente las transacciones y los puntos de restauración (transacciones anidadas o save points).

·        Presenta métodos para operaciones y consultas SQL típicas.

·        Incluye método para llamar fácilmente a un procedimiento almacenado parametrizado sin necesidad de un componente StoredProc.

·        Evita abrir la conexión innecesariamente al cargar el módulo de datos en tiempo de diseño.

 

Propiedades:

 

NameCase :TEditCharCase

Con esta propiedad es posible indicar si la base de datos emplea nombres en mayúsculas, minúsculas o en tamaño mixto.  Auxilia a muchos métodos que hacen referencia a nombres de tablas y otros objetos de la base de datos, permitiendo al programador escribir los nombres en cualquier tamaño sin riesgo de rechazo por parte del servidor.

 

SavePoints :TMagiaSQLConnectionSavePoints

Es un objeto que permite establecer y controlar fácilmente una transacción y puntos de restauración dentro de la misma (transacciones anidadas).  Este objeto tiene varias propiedades y métodos para establecer puntos de restauración, confirmarlos y restaurarlos sin necesidad de usar variables dentro del programa.  Emplea el sistema Correlated Save Points (CSP) de Sistemas GH, el cual permite relacionar entre sí a puntos de restauración de diferentes índoles.

 

StoreConnected :Boolean

Propiedad para indicar si la propiedad Connected debe ser guardada o no en el archivo DFM.  Con esto se consigue evitar que la conexión intente abrirse cada vez que se carga el módulo de datos en el IDE, o al correr la aplicación y crearse el módulo de datos sin estar todo listo para abrir la base de datos.  En el entorno de Delphi, es común establecer la propiedad Connected en True por motivos de diseño, pero es bastante frecuente que el programador quiera que esa propiedad esté en False las siguiente vez que abra el proyecto o ejecute el programa.  Su valor predeterminado es False.

 

Métodos:

 

Function CasedName (Const Name :String) :String;

Auxiliar para convertir un nombre de tabla u otro objeto de la base de datos al tamaño de letra indicado por la propiedad NameCase.

 

Procedure Commit (Const RestartTransaction :Boolean = False);

Método para confirmar la transacción activa de forma fácil (sin necesidad de emplear la estructura TTransactionDesc).  RestartTransaction es un parámetro opcional que sirve para ordenarle al componente que inicie una nueva transacción inmediatamente.

 

Function CurrentDate :TDate;

Método para obtener la fecha actual del servidor.  Se apoya en el método SelectExpr (ver nota en la descripción de éste).

 

Function CurrentTime :TTime;

Método para obtener la hora actual del servidor.  Se apoya en el método SelectExpr (ver nota en la descripción de éste).

 

Function CurrentTimeStamp :TDateTime;

Método para obtener la fecha y la hora actuales del servidor.  Se apoya en el método SelectExpr (ver nota en la descripción de éste).

 

Es común consultar la fecha o la hora del servidor, más que la fecha u hora de la máquina donde corre la aplicación, en operaciones donde las fechas y horas son muy importantes y no deben ser afectadas por cambios en el reloj de la computadora local.

 

Procedure Delete (Const Table :String; Const ID :Integer);

Método para eliminar un registro de la tabla indicada, aquel cuya llave primaria tenga un valor de ID.  NOTA:  El campo llave primaria de la tabla debe ser de tipo Integer y llamarse “ID”.  Esta condición se encuentra en revisión, pero se garantiza compatibilidad hacia atrás en futuras versiones.

 

Function ExecProc (Const Proc :String; Const Params :Variant) :Variant;

Este método es útil para llamar a un procedimiento almacenado que puede tener uno o más parámetros de entrada y uno o más de salida.  Está pensado para llamar a procedimientos que ejecutan cálculos y operaciones, mas no aquellos que devuelven un cursor.  Proc es el nombre del procedimiento a ejecutar y Params es el valor o los valores para sus parámetros de entrada.  Devuelve el valor de los parámetros de salida del procedimiento, es decir, su resultado.

 

Function ExecProcStr (Const Proc :String; Const Params :Variant) :String;

Llama a ExecProc y devuelve el mismo resultado que éste pero convertido a cadena.  Es útil cuando el procedimiento almacenado podría devolver un valor de Null, regresando en ese caso una cadena vacía.

 

Procedure Insert (Const Table, Fields :String; Const Values :Variant);

Este método permite agregar un registro a la tabla indicada, asignando los valores dados en Values a los campos señalados por Fields.  Es una forma simplificada de ejecutar una sentencia Insert Into sobre la base de datos, sin tener que formatear los valores a asignar según su tipo de dato.

 

Procedure Insert (Const Table, Fields :String;

  Const Value1, Value2 :Integer);

Esta segunda versión del método Insert es para especificar solamente el valor de dos campos de tipo entero.  Es útil para agregar registros a tablas de relación, donde los únicos campos a llenar por parte del programa son dos llaves foráneas.  Esto sin el uso de la función VarArrayOf que implicaría el emplear la primera versión del método Insert.

 

Function Max (Const Table,Field :String Const

 Conditions :String = '') :Variant;

Obtiene el máximo valor de un campo en una tabla dada, filtrando ésta por las condiciones opcionales indicadas en el parámetro Conditions. 

 

Function MaxInc (Const Table, Field :String; Const

Conditions :String = ''; Const Inc :Integer = 1) :Variant;

Llama al método Max y le suma al resultado el valor del parámetro Inc.  Funciona con campos numéricos y también alfanuméricos (‘A1’ + 1 = ‘A2’).

 

Function MaxInc (Const Table, Field :String; Const Inc :Integer) :Variant;

Segunda versión del método MaxInc, para omitir las condiciones de filtraje pero no el incremento.

 

Function Min (Const Table, Field :String; Const

Conditions :String = '') :Variant;

Obtiene el mínimo valor de un campo en una tabla dada, filtrando ésta por las condiciones opcionales indicadas en el parámetro Conditions.

 

Function NextValue (Const Sequence :String) :Integer;

Obtiene el siguiente valor de la secuencia o generador indicado.  Se apoya en el método SelectExpr (ver nota en la descripción de éste).

 

Procedure Rollback (Const RestartTransaction :Boolean = False);

Método para restaurar (revertir) la transacción activa de forma fácil (sin necesidad de emplear la estructura TTransactionDesc).  RestartTransaction es un parámetro opcional que sirve para ordenarle al componente que inicie una nueva transacción inmediatamente.

 

Function Select (Const Statement :String) :Variant;

Ejecuta una consulta Select sobre la base de datos y devuelve los valores de la primera fila de resultados.  Generalmente se utiliza para realizar consultas que devuelven una sola fila y con frecuencia un solo campo.

 

Function SelectConfig (Const Fields :String) :Variant;

Realizando una consulta Select devuelve el valor de uno o más campos de la tabla de configuración de la base de datos.  NOTA: El nombre de esa tabla debe ser establecido en la propiedad nativa Params con el nombre de llave “ConfigTable”.

 

Function SelectExpr (Const Expr :String) :Variant;

Empleando una sentencia Select, devuelve el valor de la expresión SQL especificada.  Es útil para obtener valores no relacionados a ninguna tabla pero que solo el servidor puede calcular.  NOTA: Para algunos servidores la cláusula From es obligatoria en una sentencia Select, siendo un truco típico utilizar el nombre de cualquier tabla de la base de datos que siempre tenga un registro solamente.  En esos casos, el nombre de dicha tabla debe ser especificado en la propiedad nativa Params con el nombre de llave “SelectAuxTable” (algunas clases descendientes como TMagiaFirebirdSQLConnection no requieren esta especificación).

 

Function SelectFloat (Const Statement :String) :Extended;

Llama al método Select y devuelve el mismo resultado que éste pero convertido a número flotante.  Es útil cuando la consulta SQL podría devolver un valor de Null, regresando en ese caso un valor de 0.

 

Function SelectID (Const SubStatement :String) :Integer;

Obtiene el valor de llave primaria del registro que resulte al ejecutar la sentencia Select especificada por SubStatement.  Este parámetro debe comenzar con “From {Tabla} Where...” o “{Tabla} Where...”.  Internamente llama al método SelectInt.  NOTA:  El campo llave primaria de la tabla debe ser de tipo Integer y llamarse “ID”.  Esta condición se encuentra en revisión, pero se garantiza compatibilidad hacia atrás en futuras versiones.

 

Function SelectInt (Const Statement :String) :Integer;

Llama al método Select y devuelve el mismo resultado que éste pero convertido a número entero.  Es útil cuando la consulta SQL podría devolver un valor de Null, regresando en ese caso un valor de 0.

 

Function SelectStr (Const Statement :String) :String;

Llama al método Select y devuelve el mismo resultado que éste pero convertido a cadena.  Es útil cuando la consulta SQL podría devolver un valor de Null, regresando en ese caso una cadena vacía.

 

Function SelectTrim (Const Statement :String) :String;

Llama al método SelectStr y le aplica al resultado la función Trim, devolviendo una cadena de caracteres sin espacios en los extremos.  Es útil cuando se consulta el valor de un campo de tipo Char y dicho valor no ocupa todos los caracteres disponibles.

 

Procedure StartTransaction;

Versión simplificada del método StartTransaction, que a diferencia del nativo no necesita recibir como parámetro una estructura TTransactionDesc (el componente la maneja internamente en su campo Transaction).

 

Copyright © 2006-2008  Sistemas GH S.A. de C.V.

Todas las marcas referidas son propiedad de sus respectivos dueños.

Llama al 01 (443) 314-2467 o escríbenos un            .