asp.net c# oracle 删除数据时(delete from tablename where ...)就是删除不掉。
我的程序代码如下:
   protected void Button4_Click(object sender, EventArgs e)
    {
        if (this.TextBox8.Text == "")
        {
            Response.Write("<script>alert('个人编号不能为空')</script>");
            return;
        }
        WebMessageBox1("["+this.TextBox8.Text+"]");
        string ConnectionString = "Data Source=orcl;user=syyhsimis;password=syyhsimis;";//写连接串
        OracleConnection conn = new OracleConnection(ConnectionString);//创建一个新连接
        try
        {
            conn.Open();
            OracleTransaction myOracleTransaction = conn.BeginTransaction();
            OracleCommand cmd = conn.CreateCommand();
            cmd.CommandText = "delete from SF01 where ( aac001='" + this.TextBox8.Text + " ')";
            cmd.ExecuteNonQuery();
            myOracleTransaction.Commit();
        }
        catch (Exception ee)
        {
            Response.Write(ee.Message);
            WebMessageBox1("数据库操作错,删除失败");
        }
        finally
        {
            conn.Close(); //关闭连接
        }
        Response.Write("<script>alert('删除成功!')</script>");
        Response.Write("<script   language='javascript'>location.href=location.href;</script>");   
    }    数据库中的这个表中,确实有符合条件的数据,用PL/SQL同样的语句就可以删除。
    之前没有用到事物处理,后来看到有人说要用,就加上了,可还是删除不掉啊。
    我把DELETE 语句的条件都去掉了,直接delete from sf01也删不掉。
    谁知道是什么问题啊?

解决方案 »

  1.   

    把CommandText 的value放到PL/SQL下看是否有问题
    如果有,就是你的sql有问题了
      

  2.   

    OracleConnection 与OracleCommand 关联了吗?
      

  3.   

    对,加个断点,看看语句在PLSQL里执行效果如何,说不定是参数this.TextBox8.Text错了
      

  4.   

    把这个加上看看cmd.CommandType = CommandType.Text;
      

  5.   

    拜托各位老大啊,this.TextBox8.Text类型什么的都不错啊,我做UPDATE都没有问题的,看看还有什么其他的办法吗?
    如果要加个断点,该怎么加啊?最好把代码写出来啊,谢谢了!
      

  6.   

    刚刚解决了和你一样的问题。很崩溃。
    cmd.CommandText = "delete from SF01 where ( aac001='" + this.TextBox8.Text + " ')"; 
    改成
    cmd.CommandText = "delete from SF01 where ( aac001='" + this.TextBox8.Text + "')"; 
    也就是'"+ this.TextBox8.Text +"'的单引号和双引号中间不能有空格,否则查询不到。