quinta-feira, 21 de março de 2024

Olá amigos!

Hoje falarei brevemente sobre um assunto bem interessante no SQL Server que são as views de sistema com informações de schema do banco de dados.

O que são views de sistema?
O Sql Server disponibiliza uma série de views para auxílio na localização de schema de tabelas, views, procedures, entre outras necessidades, facilitando em muito a localização e também a utilização dessas informações

Para quê servem?
Digamos que seja necessário saber em qual tabela temos uma coluna contendo a string “name” em seu nome. Uma forma de resolver isto seria usando a view sysobjects e a view syscolumns, conforme exemplo abaixo:

1
2
3
4
SELECT * FROM SYSOBJECTS OBJ
INNER JOIN SYSCOLUMNS COL
ON OBJ.ID = COL.ID
WHERE COL.NAME LIKE '%NAME%'

Ótimo, isso funciona perfeitamente, porém existe uma forma mais fácil de fazer isto, usando as views de sistema. Em vez de usar isto, use isto:

1
2
SELECT * FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME LIKE '%name%'

A vantagem mais notável é a sintaxe simplificada ao mesmo tempo uma gama maior de informações retornadas sem necessidade de fazer outros joins com outras views, como é necessário fazer quando usamos as views como sysobjects, syscolumns, etc. Sempre que forem utilizar estas views, é preciso usar o nome qualificado INFORMATION_SCHEMA.nome_da_view.

Abaixo uma lista das principais views do INFORMATION_SCHEMA e seus objetivos:

NomeDescrição
CHECK_CONSTRAINTSInformações sobre as constraints das tabelas
REFERENTIAL_CONSTRAINTSRetorna uma linha para cada FOREIGN KEY no banco selecionado
ROUTINESTodas as funções definidas pelo usuário e stored procedures
COLUMN_PRIVILEGESColunas com previlégios garantidos para ou pelo usuário atual
ROUTINE_COLUMNSInformações sobre as colunas usadas nas procedures e functions
COLUMNSInformações sobre todas as colunas
SCHEMATAInformações sobre os bancos de dados
CONSTRAINT_COLUMN_USAGEColunas usadas nas constraints
TABLE_CONSTRAINTSTodas as restrições das tabelas
CONSTRAINT_TABLE_USAGETabelas que possuem uma restrição definida
TABLE_PRIVILEGESTabelas com previlégio garantido para ou pelo usuário atual
TABLESInformações sobre as tabelas
DOMAINSTodos os tipos de dados definidos pelo usuário
VIEW_COLUMN_USAGEInformações sobre colunas utilizadas nas views
KEY_COLUMN_USAGEColunas restringidas como uma chave
VIEW_TABLE_USAGETabelas usadas em uma View
PARAMETERSTodos os parametros para funções definidas pelo usuário e stored procedures
VIEWSInformações sobre as Views

Por hora é isso, façam seus selects e avaliem a necessidade e utilização de cada uma das views citadas.

Referência: http://msdn.microsoft.com/en-us/library/ms186778.aspx


quinta-feira, 16 de abril de 2015

OFF - Música de boa qualidade!

Opa, tudo bem com vocês?

Estou de volta com projeto de retomar de vez as postagens, e me permito começar com uma postagem nada a ver com tecnologia...
Sou músico nas horas vagas, atividade que me permite "desestressar" e esvaziar um pouco das rotinas diárias e, atualmente, toco bateria em um grupo chamado Quinteto Hope.

Dêem uma olhada em nossos canais:
Site : www.hope5.com.br
Instagram: https://instagram.com/hopemusica

Grande abraço a todos e Deus os abençoe!

quarta-feira, 28 de janeiro de 2015

Google Cardboard é usado pela primeira vez por uma...

O blog do Google Brasil: Google Cardboard é usado pela primeira vez por uma...: Um pedaço de papelão dobrável, duas lentes, um microchip, um ímã, um elástico e duas fitas de velcro. Nisso consiste o Google Cardboar...



Algo extremamente interessante e criativo, mostrando que nem tudo em tecnologia precisa ser, necessariamente, dispendioso, não?



#3D #Google #Cardboard

sexta-feira, 17 de setembro de 2010

Novo Blog!

Galera,

Estou fazendo parte de um blog de Tecnologia recém saído do forno, o Olho no bit.
A idéia é trazer informações sobre pequenos problemas do dia-a-dia, aquelas questões simples de solução rápida que, muitas vezes, nos tiram do sério!

Acessem e acompanhem:
http://olhonobit.wordpress.com/

[]'s !

terça-feira, 31 de agosto de 2010

Zerando valor da coluna Identity

Post simples mas útil.
Se Você estiver usando uma coluna definida como "Identity" em uma tabela SQL Server, você pode definir qual o próximo valor a ser inserido nesta coluna. Por exemplo, definir que o número da sua coluna ID seja definido como 500 ao invés de 1, que seria o padrão. Abaixo alguns exemplos de como fazer isso e outras utilizações:

Para saber qual será a próxima numeração a ser inserida na coluna identificadora:

DBCC CHECKIDENT ('tablename', NORESEED)

Se quiser então saber o valor do próximo ID na tabela "usuarios", pode-se usar este comando:

DBCC CHECKIDENT (usuarios, NORESEED)

Para definir o próximo valor da sua coluna ID para 1000, use o seguinte:

DBCC CHECKIDENT (usuarios, RESEED, 999)

Note que o próximo valor será 1000, pois é o valor informado no comando + 1.

Um último detalhe é que você pode envolver o nome da tabela com aspas simples, ou os colchetes quando estiver falando em situações especiais como nome de tabela com espaços (o que eu não gosto) ou caminho completo da tabela:

DBCC CHECKIDENT ( 'seubancodedados.dbo.usuarios', RESEED, 999)

[]'s e até a próxima!

quinta-feira, 13 de maio de 2010

Qual sua postura ao fazer uma m… ?

Por acaso procurando sobre ITIL, achei no blog Profissionais de Tecnologia este artigo, onde o autor comenta uma situação que muitos de nós já viveram que é o dia em que fizemos uma, com perdão da palavra, cagada das grandes.

Vale a pena dar uma olhada no post completo: http://www.profissionaisdetecnologia.com.br/blog/?p=116

[]’s