Category Archives: Programación
SQL: Buscar texto dentro de procedimientos almacenados
Cuando comenzamos a dar soporte o continuidad a un proyecto ya iniciado, es necesario conocer donde se encuentran algunos elementos, en este caso si necesitamos realizar la búsqueda de instrucciones en los procedimientos almacenados y no perder tiempo buscando en cada uno de los procedimientos es recomendable utilizar las funciones de búsqueda que SQL nos ofrece, a continuación se mostrara como funciona y el resultado que arroja.
Query para búsqueda en procedimientos almacenados.
SELECT SUBSTRING(text,0,40) FROM syscomments WHERE text LIKE '%BUSQUEDA%'
SQL: Buscar dato o campo en todas las tablas de la base de datos en SQL Server con un procedimiento almacenado
Es común que necesitemos encontrar un dato o campo en una base de datos, pero cuando queremos ver en cuantas tablas podemos encontrar este dato, esta tarea se puede volver un poco tediosa por lo complejo que se tornarían los querys para realizar este proceso.
Query para crear el procedimiento almacenado para realizar búsquedas
Con este query se declara y crea el procedimiento anidado que utilizaremos para realizar la búsqueda de los datos o campos en toda las tablas de la base de datos, donde solo utilizaremos una linea de código el cual es “EXEC SearchAllTables ‘Computer’ GO”, pero mas adelante les mostrare esto.
SQL: Buscar tabla o columna en una base de datos de SQL Server
Muchas veces cuando comenzamos a utilizar algún nuevo sistema con base de datos en SQL Server, ya sea para dar soporte o simplemente necesitamos realizar alguna consulta y buscamos algún campo en especifico dentro de la base datos, esto puede volverse tedioso si la base de datos contiene cientos de tablas, existen formas de realizar esta consulta fácilmente, a continuación mostrare un query que nos ayudara en esta tarea.
Query de búsqueda
En este solo tenemos que cambiar el dato NombreABuscar por el nombre de la tabla o columna que buscamos,
Características del Query
1.- Buscar el nombre de tabla o columna en la Base de Datos
2.- Buscar el nombre de la tabla o columna en la Base de Datos sin tener el nombre exacto, podremos buscar por ejemplo una tabla o columna que se llama EmpleadosRegionMexico y solo poner en busqueda EmpleadosRegion, nos arrojara como resultado todas las tablas que contengan EmpleadosRegion, o también si ponemos solo Empleados, o Emplead nos arrojara todas las tablas que contengan esos caracteres.
SQL: Error al restaurar base de datos en Microsoft SQL Server
Si obtenemos el siguiente mensaje cuando queremos restaurar una base de datos es porque la versión en la cual se realizo la base de datos es una versión superior a donde queremos restaurar la base de datos, esto suele suceder cuando transferimos o queremos migrar la base de datos a otro equipo o servidor, el mensaje de error debe cambia segun la versión, algunos de ellos son.
SQL: Limitar Consumo Máximo de Memoria RAM a Microsoft SQL
Algunas veces podemos percatarnos del comportamiento del aumento de consumo de Memoria de MSSQL, el cual podemos llegar a pensar que SQL Server tiene algún defecto al consumir toda la Memoria RAM existente sin motivo aparente. Sin embargo, este es un comportamiento normal y no solo eso, si no que además esta gestión dinámica y automática de la memoria en SQL Server es la configuración recomendada.
Es posible Limitar la Cantidad Máxima de Memoria RAM de consumo a una instancia de SQL Server, en entornos locales (Equipo de pruebas o Micro Empresas) donde se ejecuta MSSQL junto con otros servicios tales como Active Directory, MS Exchange, etc. Podemos limitar el uso de memoria a una instancia de SQL Server para no comprometer los recursos de los demás servicios,
Por otro lado, en entornos empresariales, tratamos con servidores dedicados de base de datos, por lo cual esta configuración no tiene sentido alguno.
En otro sentido, no es recomendable compartir el servidor que ejecuta SQL Server con otros servicios tales como los que mencionamos en un principio ya que se comprometen los recursos del mismo y podemos obtener resultados negativos en la estabilidad (aun con instancias SQL limitadas) de los servicios tanto de SQL como los demás que estemos ejecutando.
Si ya hemos decidido establecer un límite de Memoria RAM que puede consumir una instancia de SQL server, debemos proceder a realizar la configuración en el procedimiento almacenado sp_configure, en este pudiendo establecer el valor de las propiedades min server memory y max server memory, esta es una configuración avanzada, por lo que se debe habilitar previamente la configuración show advanced options, Estas configuraciones pueden realizarse sin reiniciar la instancia de SQL Server.
Ejemplo típico donde se acostumbra a Limitar la Cantidad Máxima de Memoria RAM a MSSQL
Tenemos un servidor el cual compartimos con varios servicios entre ellos SQL Server, donde al mismo tiempo en MSSQL tenemos múltiples instancias, el cual limitamos para evitar que cada instancia intente consumir toda la memoria, asi evitando una conflicto de recursos entre estas.
Error SQL: “System.Data.SqlClient.SqlError: The backup set holds a backup of a database other than the existing”
Muchas veces al restaurar la base de datos en Microsoft SQL obtenemos este error, el cual se debe a que intentamos “restaurar una base de datos en otra base de datos que no son la misma, Por ejemplo usted tiene una copia de seguridad (.bak) de la base de datos llamada “SistemaInv” y al tratar de restaurar la copia de seguridad de la base de datos en “SistemaCentralizado”, nos va a marcar el error”.El cual podemos ver en la siguiente imagen.








