0 valutazioniIl 0% ha trovato utile questo documento (0 voti)
27 visualizzazioni11 pagine
Este documento proporciona instrucciones para buscar tablas, columnas u otros elementos en una base de datos SQL Server. Explica cómo crear un procedimiento almacenado que permita buscar cualquier cadena en todas las tablas de una base de datos de manera eficiente en una sola línea de código. También muestra cómo usar consultas para buscar elementos específicos o cadenas de texto en tablas, columnas, procedimientos almacenados y dentro del código de estos procedimientos.
Este documento proporciona instrucciones para buscar tablas, columnas u otros elementos en una base de datos SQL Server. Explica cómo crear un procedimiento almacenado que permita buscar cualquier cadena en todas las tablas de una base de datos de manera eficiente en una sola línea de código. También muestra cómo usar consultas para buscar elementos específicos o cadenas de texto en tablas, columnas, procedimientos almacenados y dentro del código de estos procedimientos.
Este documento proporciona instrucciones para buscar tablas, columnas u otros elementos en una base de datos SQL Server. Explica cómo crear un procedimiento almacenado que permita buscar cualquier cadena en todas las tablas de una base de datos de manera eficiente en una sola línea de código. También muestra cómo usar consultas para buscar elementos específicos o cadenas de texto en tablas, columnas, procedimientos almacenados y dentro del código de estos procedimientos.
Muchas veces cuando comenzamos a utilizar un nuevo sistema con base de datos en SQL Server, ya sea para dar soporte o simplemente necesitamos realizar consultas y buscamos algn campo en especifico dentro de la base datos, esto puede volverse tedioso si la base de datos contiene cientos de tablas, ahora vemos que podemos reducir nuestros tiempos debsqueda realizando consultas con el dato que deseamos encontrar. Caractersticas del Query 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 tambin si ponemos solo Empleados, o Emplead nos arrojara todas las tablas que contengan esos caracteres. Query de bsqueda En este solo tenemos que cambiar el dato NombreABuscar por el nombre de la tabla ocolumna que buscamos,
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 USE SistCont DECLARE @busqueda AS VARCHAR(20) SET @busqueda = 'NombreABuscar' select t.name as 'Tabla', c.name as 'Columna', ti.name as 'Tipo', c.is_nullable as 'Acepta Datos Nulos', c.max_length as 'Largo Mximo' from sys.tables t left join sys.all_columns c on (c.object_id = t.object_id) left join sys.types ti on (c.system_type_id = ti.system_type_id) where c.name like '%' + @busqueda + '%' OR t.name like '%' + @busqueda + '%' order by 'tabla' Funcionamiento de Query en Microsoft SQL Server Management Studio, Primero buscaremos el nombre de una tabla el cual se llama Empleado.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 USE SistCont DECLARE @busqueda AS VARCHAR(20) SET @busqueda = 'Empleado' select t.name as 'Tabla', c.name as 'Columna', ti.name as 'Tipo', c.is_nullable as 'Acepta Datos Nulos', c.max_length as 'Largo Mximo' from sys.tables t left join sys.all_columns c on (c.object_id = t.object_id) left join sys.types ti on (c.system_type_id = ti.system_type_id) where c.name like '%' + @busqueda + '%' OR t.name like '%' + @busqueda + '%' order by 'tabla Resultados de la bsqueda Como podemos ver en el Query el nombre que busque es Empleado y el resultado nos dio las tablas que contenan Empleado, en este caso en la base de datos de muestra solo tenemos una tabla con el nombre empleados como se muestra en la imagen.
Ahora figuraremos que requerimos una Columna del cual no sabemos o recordamos el nombre completo, lo podemos buscar con tan solo una parte de esta por ejemplo Clie, ahora veamos cual es el resultado. Como podemos ver, nuestra bsqueda me arrojo como resultado Tablas y Columnas que contienen Clie.
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 bsqueda de instrucciones en los procedimientos almacenados y no perder tiempobuscando en cada uno de los procedimientos es recomendable utilizar las funciones de bsqueda que SQL nos ofrece, a continuacin se mostrara como funciona y el resultado que arroja. Query para bsqueda en procedimientos almacenados.
1 SELECT SUBSTRING(text,0,40) FROM syscomments WHERE text LIKE '%BUSQUEDA%' Ejemplo Veamos el query en funcionamiento, realizare una busqueda para encontrar el texto MAX, elquery me dara como resultado todos los procedimientos almacenados que contengan en su interior MAX.
SQL - Buscar dato O Campo ES: Todas Las Tablas de base de la de Datos en Creando servidor Procedure ONU almacenado La SQL
Es Comn Que necesitemos ENCONTRAR UN dato o campo En Una la Base de Datos , Pero CUANDO Queremos ver en Cuantas Tablas Podemos ENCONTRAR Este dato, this tarea Se Puede volver ONU tediosa Poco Por lo Complejo Que se tornaran los querys prr realizar this Proceso. Consulta prr Crear el Procedure almacenado La prr realizar bsquedas Con this consulta s DeCLARA y crea el Procedure anidado Que utilizaremos prr Realizar labsqueda de los Datos o campos en Toda Las tablas de la la Base de Datos , Donde solo utilizaremos Una linea de Cdigo Cual es el "GO SearchAllTables EXEC 'PC'", Pero mas Adelante les mostrare ESTO.
DECLARE @TableName nvarchar(256), @ColumnName nvarchar(128), @SearchStr2 nvarchar(110) SET @TableName = '' SET @SearchStr2 = QUOTENAME('%' + @SearchStr + '%','''')
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 WHILE @TableName IS NOT NULL BEGIN SET @ColumnName = '' SET @TableName = ( SELECT MIN(QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME)) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE' AND QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME) > @TableName AND OBJECTPROPERTY( OBJECT_ID( QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME) ), 'IsMSShipped' ) = 0 )
WHILE (@TableName IS NOT NULL) AND (@ColumnName IS NOT NULL) BEGIN SET @ColumnName = ( SELECT MIN(QUOTENAME(COLUMN_NAME)) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = PARSENAME(@TableName, 2) AND TABLE_NAME = PARSENAME(@TableName, 1) AND DATA_TYPE IN ('char', 'varchar', 'nchar', 'nvarchar') AND QUOTENAME(COLUMN_NAME) > @ColumnName )
IF @ColumnName IS NOT NULL BEGIN INSERT INTO #Results EXEC ( 49 50 51 52 53 54 55 56 57 58 'SELECT ''' + @TableName + '.' + @ColumnName + ''', LEFT(' + @ColumnName + ', 3630) FROM ' + @TableName + ' (NOLOCK) ' + ' WHERE ' + @ColumnName + ' LIKE ' + @SearchStr2 ) END END END
SELECT ColumnName, ColumnValue FROM #Results END
Consulta prr Realizar la bsqueda Realizando La Llamada al Procedure anidado. Con this ejecutar consultas Cambiando 'Busqueda' Por El Texto del campo o dato Que deseemos Buscar, nos realizara La Google bsqueda de Este bao: Todas Las tablas y Columnas de la la Base de Datos .
1 2 EXEC SearchAllTables 'Busqueda' GO
Restaurar una BD en SQL Server 2008 R2 3 dic 2012 | Bases de datos Como restaurar una base de datos usando SQL Server 2008 r2? 1. Instalar SQL server 2008 r2 2. Restaurando base de datos Lo primero que debemos hacer es conectarnos con el servidor, lo haremos de la siguiente manera: Al momento de iniciar nuestro SQL Server 2008 r2 por primera vez nos mostrara una pantalla como la siguiente
No modificar ningn campo excepto por el de nombre del servidor aqu pondremos el nombre del servidor que hayamos creado en mi caso lo deje por default as que pondr (local) no olvidar los parntesis y a continuacin le damos en conectar. Una vez conectados nos mostrara una ventana ala izquierda con una serie de carpetas (bases de datos, seguridad, objetos de servidor, replicacin, administracin) tal como lo muestra la siguiente imagen
Para poder restaurar nuestra base de datos lo primero que debemos hacer es ubicar el archivo o la base de datos que necesitamos restaurar normalmente tiene la terminacin (.bak), este archivo esta alojado dentro de nuestro proyecto en la carpeta o ruta siguiente C:\Users\Lucho\Desktop\Fondeos\construccin\base de datos\respaldos\desarrollo el archivo normalmente esta comprimido (.rar) o (.zip) una ves identificado nuestro archivo lo que debemos hacer es descomprimir este archivo para que nos quede el archivo (.bak) el cual es el que necesitaremos para poder restaurar nuestra base de datos.
Se muestra el archivo comprimido (.rar) y el archivo o base de datos descomprimido (.bak) Volviendo nuestro SQL Server 2008 r2 con el click derecho de nuestro mouse seleccionamos la carpeta bases de datos y seleccionamos la opcin (restaurar bases de datos)
Nos abrir una ventana en la cual asignaremos un nombre a nuestra base de datos en mi caso la base de datos la cual quiero restaurar se llama Fondeos as que dentro del campo (A una base de datos:) pondr Fondeos y como la queremos restaurar desde un archivo en nuestra computadora en la opcin (origen de la restauracin) seleccionaremos la opcin desde dispositivo y a continuacin damos click en el botn con putos.
Nos abrir nuevamente una nueva ventana en la cual buscaremos el archivo o la base de datos que deseamos restaurar no olvidar que nuestro archivo debe terminar (.bak) vamos a la opcin agregar y buscamos nuestro archivo, lo seleccionamos y le damos aceptar
Nos aseguramos que nuestro archivo este correcto y presionamos aceptar, a continuacin nos mostrara la ventana en la cual estbamos anteriormente pero ahora en la parte de abajo nos mostrara la base de datos que hemos seleccionamos, Activamos la casilla restaurar y presionamos aceptar
Por ultimo nos abrir una ventana la cual nos dir que la base de datos se restauro correctamente.