REPLACE INTO

-- Anteriormente en Sql Server

IF EXISTS(SELECT 'HOLA' FROM MiTabla WHERE Llave1 = @Llave1 AND LlaveN = @LlaveN)
 UPDATE MiTabla SET Valor1 = @Valor1, ValorN = @ValorN
 WHERE Llave1 = @Llave1 AND LlaveN = @LlaveN
ELSE
 INSERT INTO MiTabla(Llave1, LlaveN, Valor1, ValorN)
 VALUES (@Llave1, @LlaveN, @Valor1, @ValorN)

-- Ahora con Sql Server 2008

MERGE MiTabla AS T1
 USING (SELECT @Llave1, @LlaveN) AS T2 (Llave1, LlaveN)
 ON (T1.Llave1 = T2.Llave1 AND T1.LlaveN = T2.LlaveN)
WHEN MATCHED THEN
 UPDATE SET Valor1 = @Valor1, ValorN = @ValorN
WHEN NOT MATCHED THEN
 INSERT (Llave1, LlaveN, Valor1, ValorN)
 VALUES (@Llave1, @LlaveN, @Valor1, @ValorN);

-- Algo que MySql tiene desde hace varios años

REPLACE INTO MiTabla(Llave1, LlaveN, Valor1, ValorN)
VALUES (@Llave1, @LlaveN, @Valor1, @ValorN)

Programa de Radio en blogtalkradio

Highcharts


Exportar privilegios

use MyDataBase

GO

SELECT T1.state_desc
    , T1.permission_name
    , 'ON'
    , '[' + OBJECT_SCHEMA_NAME(T1.major_id) + '].[' + OBJECT_NAME(T1.major_id) + ']'
    , 'TO'
    , USER_NAME(T1.grantee_principal_id)
FROM sys.database_permissions T1
JOIN sys.database_principals T2 ON T2.principal_id = T1.grantee_principal_id
WHERE T1.class_desc = 'OBJECT_OR_COLUMN'
ORDER BY 2, 6, 4

OData - Open Data Protocol