【问题标题】:Invalid parameter binding Parameter name: file无效的参数绑定参数名称:文件
【发布时间】:2014-09-11 10:53:11
【问题描述】:

我正在用 C# 编写一种将数据插入到 oracle 中的方法。在执行此操作时,我得到 错误Invalid parameter binding Parameter name: file 我的代码是:

public static void DatabaseFilePut(MemoryStream fileToPut, OracleConnection con)
    {
        try
        {
           const string preparedCommand =
                @"INSERT INTO user_account_statement (statement_id,session_key,
                  login_id,user_id,account_number,from_date,todate,ipaddress,
                  create_date_time,STATEMENT_FILE)VALUES(1073,
                 'fe79e0345986b5a439c26f731234868b53f877366f529',
                  2335,'204254','108142',to_date('2014-08-23 16:45:06','yyyy-mm-dd hh24:mi:ss'),
                  to_date('2014-08-23 16:45:06','yyyy-mm-dd hh24:mi:ss'),'106.79.126.249',
                  to_date('2014-08-23 16:45:06','yyyy-mm-dd hh24:mi:ss'), :file)";

            using (var sqlWrite = new OracleCommand(preparedCommand, con))
            {
                sqlWrite.BindByName = true;
                var blobparameter=new OracleParameter
                {
                    OracleDbType = OracleDbType.Blob,
                    ParameterName = "file",
                    Value = fileToPut
                };
                sqlWrite.Parameters.Add(blobparameter);
                sqlWrite.ExecuteNonQuery();
            }
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString());
        }
    }

我已经检查了参数部分,但没有确切知道其中有什么问题。

【问题讨论】:

    标签: c# oracle insert


    【解决方案1】:

    参数需要一个字节数组。我不知道它也接受内存流。所以

    Value = fileToPut
    

    应该是

    Value = fileToPut.ToArray()
    

    【讨论】:

    • 现在我收到错误'ORA-01745: invalid host/bind variable name'
    • 您可能应该添加来自其他答案的提示并使用 @ 符号作为参数。你在用ODP.NET,不是吗?
    • @Ashok_Karale:“文件”可能是保留字。尝试更改参数名称。通过ora-01745.ora-code.com
    • @Cory 你太棒了。我更改了参数名称并解决了问题。
    猜你喜欢
    • 2010-11-16
    • 2020-02-02
    • 1970-01-01
    • 2017-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-30
    • 1970-01-01
    相关资源
    最近更新 更多