germas_ferreira, acho que o Chiappa já explicou alguns conceitos que, creio eu, estavam confusos em sua cabeça, sobre algumas diferenças entre Oracle e MSSQL.
Comparado ao MSSQL, o Oracle facilita bastante na utilização do dicionário de dados. Com DBA_TAB_COLUMNS você consegue toda informação que precisa, sem a necessidade de fazer um join entre duas ou mais views/tabelas (como seria no SQL Server). A própria DBA_TAB_COLUMNS já faz esses joins pra você. Imagino que, pelo o que eu entendi, tudo o que você precisa fazer é inserir um filtro por "owner", pra que você possa limitar os resultados por schema e não retornar todas as tabelas de seu BD. Se pretende trabalhar com Oracle daqui pra frente, experimente ler e entender o que o Chiappa disse, além de, é claro, procurar em manuais ou artigos na internet, sobre a arquitetura do Oracle ou até mesmo suas principais diferenças do SQL Server. Aqui tem muita informação: http://tahiti.oracle.com/ Exemplo (talvez ajude, não sei): select table_name, column_name, data_type, data_length from dba_tab_columns where owner = 'SCHEMA_DO_SISTEMA'; PS: Se você precisa realmente do "id", o que eu acho muito difícil (ou talvez desnecessário), sugiro que procure informações sobre as tabelas sys.col$, sys.obj$, sys.coltype$, sys.user$, etc... []'s --- Em oracle_br@yahoogrupos.com.br, "germas_ferreira" <germas_ferreira@...> escreveu > > Oi aabarroso, > > Vou explicar o que ocorre: Tenho que obter o syscolumns.length e > systypes.name, até aqui aqui eu sei q posso encontrar essas informações nas > tabelas User_tab_columns ou User_Table. > > Mas o problema chega no trecho abaixo: > syscolumns.id = (Select id from sysobjects where name = @NM_TAB) > onde o syscolumns.id é o mesmo que o sysobjects.id. E eu tenho que fazer > algo parecido, pois devo pegar o sysobjects.id(Object_id) que ele irá me > retornar a especificamente o ID da tabela que eu quero para filtrar com o > nome da coluna. > > Já tentei fazer com o COLUMN_ID, mas não da certo, pois tenho vários bancos > parecidos e isso vai me retornar todos os registros de colunas que estão em > cada banco e com o OBJECT_ID não, ele vai buscar em um banco especifico. > > Tentei da um describe e o ORACLE diz que não suporta esse tipo de comando. > > Att. > > > > --- Em oracle_br@yahoogrupos.com.br, "aabarroso" <aabarroso1985@> escreveu > > > > Ei germas_ferreira... > > Talvez seja mais prático se você disser que informação precisa extrair do > > BD... > > > > Por exemplo: > > Quer propriedades da tabela da coluna que você tá procurando? Talvez seja > > melhor utilizar user_tables invés de user_objects... > > > > O join pode ser ser feito pelas colunas comuns entre as duas views. Não > > precisa ser necessariamente um ID, pode ser a coluna "table_name", por > > exemplo. > > > > Se você der um describe nas views/tabelas, pode ver as colunas comuns entre > > elas... > > > > []'s > > > > --- Em oracle_br@yahoogrupos.com.br, "germas_ferreira" <germas_ferreira@> > > escreveu > > > > > > Só mas uma coisa, como eu faço a junção entre as colunas USER_TAB_COLUMNS > > > e USER_OBJECTS??? > > > > > > --- Em oracle_br@yahoogrupos.com.br, "germas_ferreira" <germas_ferreira@> > > > escreveu > > > > > > > > Obrigado, me ajudou muito essa informação!!! > > > > > > > > > > > > > > > > --- Em oracle_br@yahoogrupos.com.br, "aabarroso" <aabarroso1985@> > > > > escreveu > > > > > > > > > > DBA_TYPES, DBA_TAB_COLUMNS, DBA_OBJECTS, respectivamente. > > > > > > > > > > Se não estiver conectado como DBA, pode utilizar USER_ ou ALL_ ao > > > > > invés de DBA_. > > > > > > > > > > Se quer fazer um join entre columns e types pra mostrar o tipo de > > > > > cada coluna, talvez só a DBA_TAB_COLUMNS resolva o seu problema. > > > > > > > > > > Dê um "desc" em DBA_TAB_COLUMNS e veja se possui as colunas que você > > > > > precisa... > > > > > > > > > > []'s > > > > > > > > > > > > > > > --- Em oracle_br@yahoogrupos.com.br, "germas_ferreira" > > > > > <germas_ferreira@> escreveu > > > > > > > > > > > > Bom Dia! > > > > > > > > > > > > Abaixo tenho três tabelas em SQL e queria saber quais são as > > > > > > respectivas tabelas equivalentes em Oracle: > > > > > > > > > > > > - systypes > > > > > > - syscolumns > > > > > > - sysobjects > > > > > > > > > > > > Pois pretendo fazer um join entre as duas primeiras mas não > > > > > > consegui achar chaves equivalentes. > > > > > > > > > > > > Alguém poderia me ajudar? > > > > > > > > > > > > Obrigado! > > > > > > > > > > > > > > > > > > > > >