Como concatenar valores nulos? Quando você tentar concatenar dois valores e um deles é nulo, a resposta será nulo. Porém tem um jeito de fazer isso funcionar basta usar o isnull ou coalesce.


DECLARE @var1 VARCHAR(50)    
DECLARE @var2 VARCHAR(50)     
SELECT @var1 ='Test'     
SELECT @var1 + @var2 -- NULL

O output será Null, então fazemos:


DECLARE @var1 VARCHAR(50)    
DECLARE @var2 VARCHAR(50)     
SELECT @var1 ='Test'    
SELECT @var1 + ISNULL(@var2,'' )     
SELECT @var1 + COALESCE(@var2,'' )

Anúncios

No SQL Server basta apenas executar esse comando.



SELECT tc.TABLE_NAME AS PrimaryKeyTable, tc.CONSTRAINT_NAME AS PrimaryKey, 
           COALESCE(rc1.CONSTRAINT_NAME, 'N/A' ) AS ForeignKey , 
           COALESCE(tc2.TABLE_NAME, 'N/A' ) AS ForeignKeyTable FROM
           INFORMATION_SCHEMA.TABLE_CONSTRAINTS tc LEFT JOIN
           INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS rc1 ON 
           tc.CONSTRAINT_NAME = rc1.UNIQUE_CONSTRAINT_NAME LEFT JOIN
           INFORMATION_SCHEMA.TABLE_CONSTRAINTS tc2 ON 
           tc2.CONSTRAINT_NAME = rc1.CONSTRAINT_NAME 
           WHERE TC.CONSTRAINT_TYPE = 'PRIMARY KEY' 
           ORDER BY tc.TABLE_NAME,tc.CONSTRAINT_NAME,rc1.CONSTRAINT_NAME



Acabei de ler em um blog um post que me agradou muito, mostrando alguns dos novos recursos do sql server 2008 e cada um é melhor que o outro, teremos até intellisense!

Confira: http://angryhacker.com/blog/archive/2008/06/20/10-reasons-why-sql-server-2008-is-going-to-rock.aspx

A Microsoft liberou a Release Candidate 0 do SQL Server 2008, para quem se interessar só buscar no site https://connect.microsoft.com/SQLServer/content/content.aspx?ContentID=5395