Ver Post

Split de cadenas cortas en SQL Server‏

En Bases de Datos, SQL Server por trellat0 Comentarios

Buscando si existe alguna función en SQL Server parecida al Split de Java para parsear cadenas sin tener que montar un procedimiento con charindex y substrings para separar las cadenas, al final he dado con la función PARSENAME, que no sirve exactamente para hacer split de cadenas en sí, pero para cadenas cortas funciona bien y sobretodo es rápido y directo. Realmente, …

Ver Post

Comprobar si existe un fichero con SQL Server

En Bases de Datos, SQL Server por trellat0 Comentarios

Para hacer más estable un procedimiento almacenado o stored procedure en SQL Server que trabaje con ficheros se puede realizar la comprobación de si el fichero en cuestión existe antes de empezar a procesarlo, de manera que sea más fácil de controlar el error que devuelve SQL Server cuando no existe. Esto es especialmente útil en los procesos de importación …

Ver Post

Diferencia entre fechas en SQL Server

En Bases de Datos, SQL Server por trellat0 Comentarios

En SQL Server  existe una función a la cual, pasándole dos fechas, devuelve la diferencia entre ellas. Esta función de diferencia entre fechas, se llama DATEDIFF y como peculiaridad entre otros motores de bases de datos, está que se puede definir la unidad de medida en la cual se devolverá el resultado (segundos, minutos, días, etc.). Esta función sólo está …

Ver Post

Deshabilitar autocommit en SQL Server

En SQL Server por trellat0 Comentarios

El cliente de SQL Server oficial de Microsoft, el SQL Management Studio, suele venir con la opción de autocommit por defecto. Esto puede ser un poco “peligroso” o incómodo a los que vienen de otros clientes u otros motores de bases de datos, ya que puede dar pie a auténticos desastres (suerte que hoy en día suele haber copias de …

Ver Post

Comprobar si existe una columna en SQL Server‏

En SQL Server por trellat0 Comentarios

Para comprobar si existe una columna en SQL Server‏, se puede hacer mediante una sencilla consulta en la base de datos. Esto puede servir, por ejemplo, para comprobar en un script si la columna que queremos añadir ya existía antes, lo que viene bien para blindar scripts que pueden ser ejecutados más de una vez sin que dé error. La …

Ver Post

Obtener el número de ocurrencias en una cadena en SQL Server

En SQL Server por trellat2 Comentarios

Para obtener el número de ocurrencias en una cadena en SQL Server, se puede conseguir con la siguiente instrucción: (len(‘cadenaEntera’) – DATALENGTH(replace(‘cadenaEntera’, ‘cadena_a_buscar’, ”))) / len(‘cadena_a_buscar’) Donde ‘cadenaEntera’ es la cadena donde se desea buscar el número de ocurrencias y ‘cadena_a_buscar’ es el fragmento que se desea contar. Este fragmento puede ser de la longitud que se desee, no hace falta que …

Ver Post

Exportar los datos de una tabla en Inserts en SQL Server

En SQL Server por trellat0 Comentarios

Para exportar datos de una tabla en Inserts en SQL Server, se puede hacer de manera más o menos intuitiva dependiendo del cliente que se utilice. En SQL Server Management Studio por ejemplo, se puede hacer desde el menú contextual, creando una tarea y seleccionando que sólo se desea exportar los datos y no la estructura de la tabla. Una …

Ver Post

Deshabilitar constraints (restricciones) en SQL Server

En SQL Server por trellat0 Comentarios

Para modificar la estructura de una base de datos de Microsoft SQL Server, puede ser necesario desactivar temporalmente las constraints que tenga. Por ejemplo, para vaciar los datos de una base de datos, sin tener que pensar el orden correcto para que no salten las restricciones si tenemos ya claro que queremos vaciarla entera. En SQL Server podemos desactivarlas de …