Verificar estado bloqueo de memoria en SQL Server

Lun, 12/11/2018 - 21:16 -- jsequeiros
DBCC MEMORYSTATUS
--Activo log Page In Memory (Política de seguridad local)
--Contadores  de rendimiento: RAM SQL Server Target vs total
--65% del Total del servidor
--92%-95% de consumo de RAM del SQL Server.
--16GB Servidor (4GB para el sistema operativo 12GB SQL Server)

Taxonomy upgrade extras: 

Error al crear el evento de kernel para el conjunto de recopilación SQL Server

Jue, 25/10/2018 - 17:16 -- jsequeiros

Problema:

Los informes del recopilador de datos (Data Collector) de SQL Server no muestran datos en los gráficos debido a un error en el conjunto de recopiladores.

Mensaje de error:

Error al crear el evento de kernel para el conjunto de recopilación {49268954-4FD4-4EB6-AA04-CD59D9BB5714}. Error interno
No se puede crear un archivo que ya existe.

Error en Data Collector SQL Server, no se puede crear un archivo que ya existe

Obtener el listado de triggers en una base de datos SQL Server

Lun, 06/08/2018 - 18:18 -- jsequeiros

Para enumerar todos los triggers que tiene una base de datos de SQL Server realizar lo siguiente:

Ejecutar la siguiente consulta

USE Database_Name
SELECT * FROM sys.triggers
GO

Enumerará todos los triggers (DML y DDL) en la base de datos.

Mostrar nombre de la tabla

Aquí está la misma consulta, con una columna añadida llamada Parent_Object_Name que muestra el nombre de la tabla para la cual se creó el triggers (para triggers DML) y NULL para los triggers de base de datos (DDL):

USE Database_Name
SELECT OBJECT_NAME(parent_id) as Parent_Object_Name, *
FROM sys.triggers
GO

Cambiar la intercalación (Collation) de una base de datos

Vie, 20/07/2018 - 11:51 -- jsequeiros
--Cambiar la intercalación (Collation) de una base de datos. 
USE master;  
GO  
ALTER DATABASE Colegio  
COLLATE Modern_Spanish_CS_AS ;  
GO  

--Verificar la intercalación (Collation) de una base de datos.  
SELECT name, collation_name  
FROM sys.databases  
WHERE name = N'Colegio';  
GO  


--Cambiar la intercalación (Collation) de la columna de una tabla. 
ALTER TABLE [Colegio].[dbo].[persona] ALTER COLUMN nombre  
            varchar(40)COLLATE Modern_Spanish_CS_AS NOT NULL;  
GO  

Resultados de la Consulta

Cambiar la intercalación (Collation) de una base de datos SQL Server

Uso de OUTER JOINs

Dom, 21/01/2018 - 22:19 -- jsequeiros

Hay dos tipos básicos de OUTER JOINs:  LEFT y RIGHT.  Ambos proporcionan una funcionalidad muy similar, pero existe una pequeña diferencia que depende del orden de las tablas en la consulta.  Usando el artículo de ventas de productos, si comienza a leer la consulta de izquierda a derecha, ¿qué tabla encuentra primero?  La tabla Production.Product, que lo convierte en la tabla de la izquierda.  La segunda tabla que encuentra (sigue leyendo a la derecha) es Sales.  SalesDeerDetail, la tabla derecha.  Esta tendencia continúa durante toda la consul

Clausula DISTINCT y NULL

Mié, 17/01/2018 - 15:49 -- jsequeiros

DISTINCT devuelve una lista única o distinta de valores de cada columna especificada en una instrucción SELECT. Si hay valores duplicados en la lista, se eliminarán todos los valores duplicados excepto uno. Por ejemplo, si ejecuta la siguiente consulta, el resultado devuelve una lista de productos con algunos de los nombres de productos repetidos varias veces:

USE AdventureWorks2012;
SELECT
p.Name AS ProductName
FROM Production.Product AS p
INNER JOIN Sales.SalesOrderDetail sd
ON p.ProductID = sd.ProductID

Uso de Unión para combinar conjuntos de resultados

Mar, 16/01/2018 - 15:39 -- jsequeiros

A menudo tendrá dos instrucciones SELECT que pueden necesitar combinarse en un resultado para el consumo de una aplicación o usuario final. Con la palabra clave UNION, puede lograr eso.
UNION tiene dos variaciones:

  • Solo UNION, que elimina las filas duplicadas en su conjunto de resultados.
  • UNION ALL, que incluye duplicados. Si los duplicados son posibles, debe usar UNION ALL; es mucho más rápido porque no tiene que incluir DISTINCT.

El siguiente pseudocódigo ilustra el uso de UNION:

SELECT column1, column2 FROM TABLE1
UNION
SELECT column1, column2 FROM TABLE2

Al escribir una consulta con UNION, ambas declaraciones SELECT deben contener el mismo número de columnas, y los tipos de datos deben coincidir para cada columna. Cuando utilice UNION, proporcione solo una cláusula ORDER BY después de la última instrucción SELECT.

Limitación de los datos devueltos en el conjunto de resultados

Mar, 16/01/2018 - 14:47 -- jsequeiros

Además de utilizar una cláusula WHERE en la consulta, tiene varias otras formas de limitar los datos devueltos en el conjunto de resultados. Si bien existe una larga lista de métodos y técnicas que puede utilizar, SQL Server ofrece palabras clave que proporcionan un enfoque muy simplista para limitar el conjunto de resultados.

Uso de Top

La palabra clave TOP limita el número de filas que se devuelven en un resultado a un número específico de filas o a un porcentaje específico de filas. La parte superior debe usarse siempre con la cláusula ORDER BY. En la mayoría de los casos, buscará el conjunto de valores más alto o más bajo para una columna dada, y la ordenación de los datos le proporcionará esa información. Por ejemplo, si desea devolver las cinco ventas principales de su tabla de ventas, añada TOP (5) inmediatamente después de la palabra clave SELECT. Además, se incluye una cláusula ORDER BY especificando la columna que contenía el valor de ventas real para cada fila como la columna de pedido.

Páginas

Suscribirse a Ejercicios de Excel, Word, Power Point, 2007, 2010, 2013 RSS