C# ORACLE查询未更新表的OleDbCommand

C# ORACLE查询未更新表的OleDbCommand,c#,oracle,sql-update,commit,oledbconnection,C#,Oracle,Sql Update,Commit,Oledbconnection,我什么都试过了,在谷歌上搜索了好几天,但我发现什么都帮不了我 我有Oracle 9i db,表时间单位,有几个字段-为了我的目的,我只使用3个,定义为: 代码-VARCHAR2(6),用于输入-VARCHAR2(1),用于输出-VARCHAR2(1)。我的代码是: string strConString = "provider=MSDAORA;DSN=myDSN;user id=myUser;password=myPassword"; string strQuery = "UPDATE TIME

我什么都试过了,在谷歌上搜索了好几天,但我发现什么都帮不了我

我有Oracle 9i db,表时间单位,有几个字段-为了我的目的,我只使用3个,定义为: 代码-VARCHAR2(6)用于输入-VARCHAR2(1)用于输出-VARCHAR2(1)。我的代码是:

string strConString = "provider=MSDAORA;DSN=myDSN;user id=myUser;password=myPassword";
string strQuery = "UPDATE TIME_UNITS SET FOR_IN='Y', FOR_OUT='Y' WHERE CODE='202003'";

using (OleDbConnection oleDbConn = new OleDbConnection(strConString ))
using (OleDbCommand cmd = new OleDbCommand(strQuery, oleDbConn))
{
    oleDbConn.Open();

    cmd.Transaction = oleDbConn.BeginTransaction(); 
    int rows = cmd.ExecuteNonQuery();
    cmd.Transaction.Commit();

    oleDbConn.Close();
}

ExecuteOnQuery返回一行,但当我使用sqldeveloper查看数据库时,没有任何更改。使用相同的凭据,同一语句在sqldeveloper中可以完美地工作。我尝试了使用和不使用事务开始提交,但数据库中仍然没有任何更改。我做错了什么?

可能SQL Developer有挂起的提交?尝试重新启动SQL Developer。我在这里也发生过几次。不,sqldeveloper工作得很好,如果我从sqldeveloper执行此操作,它会将\u IN和\u OUT的字段更改为“Y”没有问题。但是如果我从代码中执行,没有错误,ExecuteOnQuery返回1,但db中没有任何更改(刷新,重新启动开发人员,但仍然没有更改),我想知道您没有收到任何错误,连接字符串是错误的。它必须是
Data Source=myDSN
而不是
DSN=myDSN
不应该是,当我使用SELECT时,相同的连接字符串可以完美地工作。更新失败了,没有提交。并且凭据正常,已获得写入权限。SQL Developer是否有挂起的提交?尝试重新启动SQL Developer。我在这里也发生过几次。不,sqldeveloper工作得很好,如果我从sqldeveloper执行此操作,它会将\u IN和\u OUT的字段更改为“Y”没有问题。但是如果我从代码中执行,没有错误,ExecuteOnQuery返回1,但db中没有任何更改(刷新,重新启动开发人员,但仍然没有更改),我想知道您没有收到任何错误,连接字符串是错误的。它必须是
Data Source=myDSN
而不是
DSN=myDSN
不应该是,当我使用SELECT时,相同的连接字符串可以完美地工作。更新失败了,没有提交。并且凭证正常,已获得写入权限。