c#odbc更新查询无法正常工作

c#odbc更新查询无法正常工作,c#,sql-update,odbc,C#,Sql Update,Odbc,嗨,我正在用c语言编写一个程序# 我必须连接到SQLANYWHERE 11并对表进行更新 你能告诉我哪里错了吗 计划进展顺利,直到我达到以下目标: int number=wCommand.ExecuteNonQuery();线 程序不会崩溃,但表不会更新 string dns = "Dsn=dattest;Uid=******;Pwd=******;"; OdbcDataReader reader; OdbcCommand wCommand;

嗨,我正在用c语言编写一个程序#

我必须连接到SQLANYWHERE 11并对表进行更新

你能告诉我哪里错了吗

计划进展顺利,直到我达到以下目标: int number=wCommand.ExecuteNonQuery();线 程序不会崩溃,但表不会更新

        string dns = "Dsn=dattest;Uid=******;Pwd=******;";
        OdbcDataReader reader;
        OdbcCommand wCommand;
        ODBCClass dst1 = new ODBCClass(dns);
        queryins = "UPDATE dba.Sala_export_dati_macchina_produzione SET stato='p'";
        // +"WHERE id_prd_lav_ord_lav='"+ id_prd_lav_ord_lav + "'";
        wCommand = dst1.GetCommand(queryins);
        int number = wCommand.ExecuteNonQuery();
        Console.WriteLine("executed "+ number);
这是我正在使用的odbc类

public class ODBCClass
    {

        OdbcConnection oConnection;
        OdbcCommand oCommand;

        public ODBCClass(string DataSourceName)
        {
            oConnection = new OdbcConnection(DataSourceName);

            try
            {
                oConnection.Open();

                System.Diagnostics.Trace.WriteLine("Connessione stabilita con il database " + DataSourceName);
            }

            catch (OdbcException caught)
            {
                System.Diagnostics.Trace.WriteLine(caught.Message);
            }
        }

        public void CloseConnection()
        {
            oConnection.Close();
        }

        public OdbcCommand GetCommand(string Query)
        {
            oCommand = new OdbcCommand
            {
                Connection = oConnection,
                CommandText = Query
            };

            return oCommand;

        }

        public void Dispose()
        {
            oConnection.Close();
        }

    }
编辑

以防我尝试使用此模式更改连接字符串:

@"Driver={SQL Anywhere 11};DatabaseName=my_db_name;EngineName=my_server_name;uid=username;pwd=password;LINKs=tcpip(host=host_ip_address)"

在这两种情况下,系统始终没有给我任何连接错误。好的,伙计们,这有点奇怪

让我来解释整件事。我是为一个客户做这个程序的,他问我一个可以连接我的mysql数据库和另一家公司的sybase数据库的软件

问题是,当在服务器上打开该公司的DBMS时,会阻止对所连接的数据库进行各种外部编辑

所以select查询定期运行,但更新和插入被该客户端阻止。。。 我已经用一个完美的工作计划度过了4天,但那家公司没有告诉我这个“小”事情


所以要知道DBMS是残酷的。

我已经用select检查了它,并且列“stato”的值没有改变,数字等于0如果你运行你的查询
更新dba.Sala\u export\u dati\u macchina\u produzione手动设置stato='p',
,它能工作吗?如果你能提供一个(尽可能小的代码,我们可以复制并粘贴到控制台应用程序中以重新处理问题)@mjwills我认为第一个代码片段就是你要问的……我想我是建议你从混合中取出
ODBCClass
,并尽可能地进行最小的复制。确保它在控制台应用程序中,并且你已经在控制台应用程序中运行了代码,并且看到它编译(更重要的是)不起作用(即表现出有问题的行为)。