首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将数据添加到oracle数据库时,我收到'ORA-01745:无效的主机/绑定变量名‘错误

将数据添加到oracle数据库时,我收到'ORA-01745:无效的主机/绑定变量名‘错误
EN

Stack Overflow用户
提问于 2015-03-24 13:01:39
回答 1查看 7.7K关注 0票数 2

当我试图将数据添加到数据库中时,我得到了这个错误。我获得的某些信息被添加到我创建的其他表中。此问题仅发生在一个表中。

下面是我的代码:

代码语言:javascript
复制
public class NewOtherCompanyMapper
{
    OtherCompany om;
    private Database db;
    private DbCommand cmd;
    private DbConnection con;

    public void AddNDADetails(string id)
    {
        try
        {
            con = db.CreateConnection();
            con.Open();

            string query = string.Format("INSERT INTO NDAInformation (NDAID,RegNumber,DateCreate,RefName,ReqServ,ServDetails) VALUES (:ndaID,:regnumber,TO_DATE(:date,'DDMMYYYY'),:refname,:regserv,:servdetails)");
            cmd = db.GetSqlStringCommand(query);
            cmd = con.CreateCommand();
            cmd.CommandText = query;
            db.ExecuteNonQuery(cmd);

            db.AddInParameter(cmd, "ndaID", DbType.String, id);
            db.AddInParameter(cmd, "regnumber", DbType.String, om.RegNumber);
            db.AddInParameter(cmd, "date", DbType.Date, om.Date);
            db.AddInParameter(cmd, "refname", DbType.String, om.ComRef);
            db.AddInParameter(cmd, "regserv", DbType.String, om.ComService);
            db.AddInParameter(cmd, "servdetails", DbType.String, string.Join(",", om.ReqServiceDetails));
        }

        catch (Exception ex)
        {
            throw ex;
        } 
    }
}
EN

回答 1

Stack Overflow用户

发布于 2015-03-24 13:14:27

ORA-01745:无效的主机/绑定变量名

原因:绑定变量或INTO规范中的冒号后面跟着不适当的名称,可能是保留字。

操作:更改变量名并重试该操作。

=============================================================

例如::。

代码语言:javascript
复制
Dim nCount As Integer

sSQL = "SELECT COUNT(*) FROM USERS WHERE USER_ID = :UID"

OracleConnection conn = new OracleConnection(ConfigurationSettings.AppSettings("connString"));
conn.Open();
OracleCommand cmd = new OracleCommand(sSQL, conn);

cmd.CommandType = CommandType.Text;

cmd.Parameters.Add("UID", OracleType.VarChar).Value = txtUserID.Text;

nCount = cmd.ExecuteScalar();
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29225329

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档