【问题标题】:Report showing the index column显示索引列的报告
【发布时间】:2015-05-07 12:18:48
【问题描述】:

我有一个生成报告的问题,需要它从 SQL 表中获取数据,并将表的名称与她的 ID 放在查询生成的数据下方

COD_CLIENTE NOME ENDERECO CPF

  2 Fulano               Av. Rio Branco       2837462890           
  3 Ciclano              Rua Zero             4625427282           
  4 Beltrano             Rua Doze             2634623637 

我创建了这个程序

create or replace PROCEDURE COLUNAS_TESTE AS 
Cursor linha is
Select cod_cliente, nome, endereco, cpf from clientes where rownum < 4;

rLin linha%rowtype;

BEGIN
Open linha;
Loop

Fetch linha into rLin;

Exit when linha%notFound;

    dbms_output.put_line('Linha: '||rLin.cod_cliente||' Coluna: 2'||' Valor: '||rLin.Nome);
    dbms_output.put_line('Linha: '||rLin.cod_cliente||' Coluna: 3'||' Valor: '||rLin.Endereco);
    dbms_output.put_line('Linha: '||rLin.cod_cliente||' Coluna: 4'||' Valor: '||rLin.CPF);
End loop;
Close linha;
END;

生成这个结果

Linha: 2 Coluna: 2 Valor: Fulano
Linha: 2 Coluna: 3 Valor: Av. Rio Branco
Linha: 2 Coluna: 4 Valor: 2837462890
Linha: 3 Coluna: 2 Valor: Ciclano
Linha: 3 Coluna: 3 Valor: Rua Zero
Linha: 3 Coluna: 4 Valor: 4625427282
Linha: 4 Coluna: 2 Valor: Beltrano
Linha: 4 Coluna: 3 Valor: Rua Doze
Linha: 4 Coluna: 4 Valor: 2634623637

行和值 好的,他得到了代码,但是我需要两个报告,一个代替他放置字段名称的列,另一个放置列索引,gambiarra 确实放置了“固定”,但是动态需要它,希望你能解释一下。

甚至设法选择搜索这些数据,但无法将其与我的专栏相关联,如果有人可以提供帮助并且我已经能够解释问题。

 select COLUNAS.COLUMN_ID AS COLUNAS_ID ,COLUNAS.COLUMN_NAME AS COLUNAS_NOME
 from USER_TAB_COLUMNS COLUNAS
 where COLUNAS.TABLE_NAME = 'CLIENTES';

【问题讨论】:

  • 抱歉,没看懂问题。
  • 对不起,我会尽量描述得更好。将创建 2 个程序,每个报告一个。客户希望它以这样的方式出现在屏幕上,从而生成行/列/值。目前该列正在通过固定,我需要你在一个过程中动态接收列索引,这是在最后一个选择问题中,而另一个过程中该列接收的列名称在选择中而不是它的价值。我希望你能够正确解释。谢谢。

标签: sql database oracle procedure


【解决方案1】:

遇到同样的问题,当我用未定义的列列表逐列编写检查器时。

检查this 示例,也许它可以帮助

【讨论】:

  • 您也可以使用列名或列注释来更好地理解输出
  • 谢谢,我会分析这个sql,但已经给了我一个很好的方向来遵循
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-20
  • 2021-06-20
相关资源
最近更新 更多