Usuário com melhor resposta
Caracteristicas de campos

Pergunta
-
Respostas
-
Erial,
SELECT COLUMN_NAME,NUMERIC_PRECISION,NUMERIC_SCALE FROM information_schema.columns WHERE TABLE_NAME = 'TB_teste'
Troca só o nome da tabela por uma de seu banco pra você testar. Coincidentemente, a estrutura de um campo DECIMAL por exemplo é
DECIMAL(Precision, Scale)
Enfim, essas views do Information Schema são bem cheias de detalhes pra metadados. Pra você ver por exemplo o tamanho máximo de um campo textual, varchar(100) por exemplo, e quiser retornar esse 100 dele, você pode, nessa mesma view citada acima, retornar a coluna CHARACTER_MAXIMUM_LENGHT.
Desejo uma boa exploração da mesma :)
Att
-
- Editado Renato Siqueira terça-feira, 13 de agosto de 2013 13:58
- Marcado como Resposta erial terça-feira, 13 de agosto de 2013 14:12
Todas as Respostas
-
Bom dia Erial,
A forma mais prática é consultando o INFORMATION_SCHEMA.
http://technet.microsoft.com/en-us/library/ms186778.aspx
Ou ainda, de modo mais conceitual:
http://en.wikipedia.org/wiki/Information_schema
Por exemplo, rode a consulta abaixo em um banco em que você precise descobrir detalhes sobre as colunas pra fins de testes. Todas as informações que você citou são trazidas pelo comando.
SELECT * FROM INFORMATION_SCHEMA.COLUMNS
Existem outras alternativas como consultar outras views (sys.objects, sys.tables, etc) e fazendo alguns joins pra trazer o que você quer. Mas sem dúvida, pra consultar metadados, nada é mais eficiente que a INFORMATION_SCHEMA, que inclusive é algo sugerido no padrão ANSI.
Espero ter ajudado.
-
- Sugerido como Resposta Leonardo N. D'Amato terça-feira, 13 de agosto de 2013 13:49
- Editado Renato Siqueira terça-feira, 13 de agosto de 2013 13:49
-
-
Erial,
SELECT COLUMN_NAME,NUMERIC_PRECISION,NUMERIC_SCALE FROM information_schema.columns WHERE TABLE_NAME = 'TB_teste'
Troca só o nome da tabela por uma de seu banco pra você testar. Coincidentemente, a estrutura de um campo DECIMAL por exemplo é
DECIMAL(Precision, Scale)
Enfim, essas views do Information Schema são bem cheias de detalhes pra metadados. Pra você ver por exemplo o tamanho máximo de um campo textual, varchar(100) por exemplo, e quiser retornar esse 100 dele, você pode, nessa mesma view citada acima, retornar a coluna CHARACTER_MAXIMUM_LENGHT.
Desejo uma boa exploração da mesma :)
Att
-
- Editado Renato Siqueira terça-feira, 13 de agosto de 2013 13:58
- Marcado como Resposta erial terça-feira, 13 de agosto de 2013 14:12