“Conocimientos software>Software de base de datos

Alternativas a los cursores de SQL

2013/2/20
Un cursor es una estructura de programación de base de datos SQL que la mayoría de los programadores de bases de datos tratan de evitar siempre que sea posible . Una base de datos SQL se construye para procesar grupos de registros , o " conjuntos de datos ", pero el cursor está diseñado para manejar un solo registro a la vez --- y también puede bloquear todos los programas de las tablas que hacen referencia hasta que estén finalmente hecho . Sustitución de cursores con diferentes estructuras es casi siempre una buena práctica de programación SQL . Emular un cursor con un bucle while

un bucle while es similar a una estructura de cursor , pero no realiza las mismas penas de bloqueo. Por lo tanto , puede tomar casi todo el tiempo de procesamiento, pero no bloquear otros programas de las tablas que está utilizando

Un ejemplo de una estructura bien : .

Mientras condición ( el programa se bucle mientras la condición es verdadera )

Comience

código ( el código se ejecutará una vez en cada pasada por el bucle While ) End



definir una función

SQL tiene funciones definidas por el usuario . En lugar de reunir todos los resultados y analizarlos uno a la vez con un cursor , la función definida por el usuario puede ser utilizado como parte de la instrucción Select .

Para poder hacer una función definida por el usuario en un Select consulta, utilice la siguiente estructura:

Seleccione nombre, apellido , dbo.user_function ( account_balance ) como AverageBalance
Construye una expresión de tabla común

Piensa en una expresión de tabla común como una tabla temporal trucado . Usted puede construir una expresión común tabla usando una variedad de consultas estándar y luego trabajar con ellos como si fueran tablas de SQL estándar

La estructura de una expresión de tabla común es: .

My_CTE (

consultas de selección estándar van aquí

) ;

Después my_CTE se ha definido , cualquier consulta adicional puede hacer referencia a ella como si fuera una tabla
.
una identidad columna

una de las razones más comunes de utilizar un cursor es para desplazarse a través de una tabla que no tiene una columna de identidad --- es decir, un identificador único para cada fila de la tabla . Sin esa identificación , es muy difícil trabajar con los datos con consultas SELECT estándar. Modificación de la tabla para añadir una columna de clave principal resuelve ese problema y debe eliminar la necesidad de un cursor para examinar cada registro individual.

Software de base de datos
Problemas de programación de un fax en RightFax
Cómo aumentar el tamaño de las transacciones de Oracle
Cómo Ir etiquetas postales Usados ​​y láminas duplicados en Access
Funciones de porcentaje para DB2
Cómo convertir a SSIS
Cómo crear un informe de SSRS en MDX
Cómo copiar de secuencia de comandos SQL en MS Word
Cómo consultar un registro en un informe en Access
Conocimientos Informáticos © http://www.ordenador.online