SQL – Controlar crecimiento del registro de transacciones

Si estás leyendo esto es porque tu registro transacciones no para de crecer y por tanto tienes mal configurado tu sistema de copias de seguridad!!! SQL Server nos ofrece varios modos de recuperación de las bases de datos (propiedades – opciones – modo de recuperación). Si seleccionas el modo SIMPLE, y luego reduces el tamaño Leer másSQL – Controlar crecimiento del registro de transacciones[…]

SQL – Script para copia de seguridad

SQL Express no dispone de planes de mantenimiento, pero es relativamente sencillo configurar un script que realice las copias de seguridad automáticamente. Los pasos para la automatización sin los siguientes: 1.- Generar el archivo con el script:  P:\Backup.sql El contenido del script está al final del artículo, y tan solo hay que modificar el nombre Leer másSQL – Script para copia de seguridad[…]

SQL – Precio mínimo de los comparativos

Función SQL para obtener el precio mínimo de las ofertas de proveedores de los comparativos: CREATE FUNCTION F_COMPA_PRECIO_MIN(@EMPRESA VARCHAR(12),@OBRA VARCHAR(12),@COD_INTERNO VARCHAR(8)) RETURNS DECIMAL(18,4) AS BEGIN    DECLARE @PRECIO_MIN DECIMAL(18,4);    SET @PRECIO_MIN=(SELECT MIN(CP.PRECIO) PRECIO_MIN FROM T_COMPA_LIN L JOIN T_COMPA_PRE CP ON CP.EMPRESA=L.EMPRESA AND CP.OBRA=L.OBRA AND CP.COMPA=L.COMPA ANDCP.LINEA=L.LINEA WHERE L.EMPRESA=@EMPRESA AND L.OBRA=@OBRA AND  L.COD_INTERNO=@COD_INTERNO AND CP.PRECIO>0 );    RETURN @PRECIO_MIN END 

TREE-Trigger para firma de facturas escaladas por importe

En ocasiones los clientes quieren que la firma de las facturas dependan del importe. En el siguiente ejemplo aplicamos un sencillo trigger para que las facturas de más de 3000€ las tenga que firmar dirección (perfil DIR), las de más de 1500€ las tenga que firmar el jefe de grupo (perfil DJO), y el resto Leer másTREE-Trigger para firma de facturas escaladas por importe[…]

SQL – Dividir una línea de texto en dos, haciendo coincidir la división con un espacio entre palabras

A veces puede ser necesario que queramos hacer una sentencia SQL que nos devuelva una línea dividida en dos cuando el texto excede una determinada longitud (y que la segunda línea esté en blanco cuando el texto simplemente es más corto de dicha longitud). Por ejemplo, en un informe queremos imprimir el nombre de una Leer másSQL – Dividir una línea de texto en dos, haciendo coincidir la división con un espacio entre palabras[…]

SQL – Velocidad de TREE y de SQL Server en remoto

Tree permite conexiones remotas a través de VPN sin necesidad de usar servicios de escritorio remoto (que suponen un coste y requieren normalmente un servidor adicional o robarle recursos al principal). La velocidad remota por VPN depende de varios factores: La complejidad de las consultas SQL La velocidad del servidor SQL La velocidad de la Leer másSQL – Velocidad de TREE y de SQL Server en remoto[…]

SQL – Rehacer indices de todas las tablas

Hace poco me encontré una base de datos Sql Server con comportamientos extraños. Las sentencias SELECT no encontraban los registros recien insertados, aparecían claves primarias duplicadas,… cosas rarísimas que no había visto nunca. El problema surgió tras restaurar un servidor que fue reiniciado a mano por el cliente «…porque tardaba mucho y entonces lo desenchufé… Leer másSQL – Rehacer indices de todas las tablas[…]