簡體   English   中英

列未知火鳥 c#

[英]Column unknown firebird c#

我正在使用 FirebirdSql.Data.FirebirdClient;

我有 SQL 查詢:

"SELECT * FROM TB_CLIENTES C JOIN TB_CLIENTES_ENDERECOS E ON (E.CLIENTE_COD = C.CLIENTE_COD AND E.ENDERECO_TIPO_COD =1) WHERE C.CLIENTE_COD LIKE :filtro ORDER BY C.RAZAO_SOCIAL"

對於 make select im 使用此代碼:

        string conexao = String.Format(integracao.Local, integracao.Usuario, integracao.Senha);
        DbConnection connection = null;
        DbCommand command = null;
        connection = new FbConnection(conexao);
        connection.Open();
        command = new FbCommand(@integracao.ConsultaSQL, (FbConnection)connection);
        if (integracao.TipoFiltro.Equals(TipoFiltroEnum.TEXTO)) { command.Parameters.Add(new FbParameter(":filtro", campoFiltro + "%")); }
        else { command.Parameters.Add(new FbParameter(":filtro", campoFiltro)); }
        DbDataReader dr = command.ExecuteReader();

我收到此異常:

FirebirdSql.Data.FirebirdClient.FbException: 'Dynamic SQL Error SQL error code = -206 Column unknown FILTRO At line 1, column 146' IscException: Dynamic SQL Error SQL error code = -206 Column unknown FILTRO At line 1, column 146

編輯:更改:到@filtro並解決問題

Firebird ADO.net 提供程序中的參數應以@符號而不是:開頭。

只需更改您的代碼以使用@ ,它應該可以工作。

SQL 代碼片段:

... WHERE C.CLIENTE_COD LIKE @filtro ORDER BY ...

C# 代碼片段:

... command.Parameters.Add(new FbParameter("@filtro", ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM