当前位置:编程学习 > C#/ASP.NET >>

请高手帮我看一下代码出现什么问题

请高手帮我看一下代码出现什么问题,就是红色部分出现问题!
红色部分问题描述为:多步 OLE DB 操作产生错误。如果可能,请检查每个 OLE DB 状态值。没有工作被完成。

using System;
using System.Data;
using System.Data.OleDb;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class Login : System.Web.UI.Page
{
    // 定义连接字符串
    private static string strConnect = System.Configuration.ConfigurationManager.AppSettings["connStr"];

    // 页面初始化
    protected void Page_Load(object sender, EventArgs e)
    {
    }

    // 点击登录事件
    protected void btnLogin_Click(object sender, EventArgs e)
    {
        // 数据库连接
        OleDbConnection objConnection = new OleDbConnection(strConnect);
        // 数据库命令
        OleDbCommand objCommand = new OleDbCommand("", objConnection);
        // 设置Sql语句
        objCommand.CommandText =
            "SELECT USERID,UGROUP FROM CA_USER WHERE USERID = @NAME AND PWD = @PASSWORD AND MODEL='VIAS'";
        // 设置Sql语句参数
        objCommand.Parameters.Add("NAME",OleDbType.VarChar);
        objCommand.Parameters.Add("PASSWORD",OleDbType.VarChar);
        // Sql语句参数赋值
        objCommand.Parameters["NAME"].Value = tbxName.Text.Trim();
        objCommand.Parameters["PASSWORD"].Value = tbxPassword.Text.Trim();

        try
        {
            // 打开数据库连接
            if (objConnection.State == ConnectionState.Closed)
           {
               objConnection.Open();           }
            // 获取运行结果
            OleDbDataReader result = objCommand.ExecuteReader();

            if (result.Read() == true)
            {
                // 设置用户ID的全局便量
                Session["USERID"] = result["USERID"].ToString();
                Session["UGROUP"] = result["UGROUP"].ToString();
                if (Session["UGROUP"].ToString() == "A")
                {
                    Response.Redirect("Mod1.aspx");
                }
                else
                {
                    Response.Redirect("Mod4.aspx");
                }
            }
            else
            {
                labError.Visible = true;
            }
        }
        catch (System.Data.SqlClient.SqlException exp)
        {
            Session["Error"] = exp.Message;
            Response.Redirect("Error.aspx");
        }
        finally
        {
            // 关闭数据库连接
            if (objConnection.State == ConnectionState.Open) 
            {
                objConnection.Close();
                }
        }
    }

    // 点击取消事件
    protected void btnCancel_Click(object sender, EventArgs e)
    {
        tbxName.Text = "";
        tbxPassword.Text = "";

        labError.Visible = false;
    }

    // 点击注册新用户事件
    protected void btnRegion_Click(object sender, EventArgs e)
    {
     //   Response.Redirect("Region.aspx");
    }
}
--------------------编程问答-------------------- private static string strConnect = System.Configuration.ConfigurationManager.AppSettings["connStr"]; 
不要定义成静态的。
最好这样写

private string GetConnectionString()
{

return System.Configuration.ConfigurationManager.AppSettings["connStr"]; 
} --------------------编程问答-------------------- 自己顶起来! --------------------编程问答-------------------- 估计是数据库状态有问题了 --------------------编程问答-------------------- System.Configuration.ConfigurationManager.AppSettings["connStr"]; 

这里配置 不对,连接不上数据库,需要 看看 连接配置 --------------------编程问答-------------------- ding --------------------编程问答-------------------- 是不是App.config文件里配置数据库连接字符串有错,再检查下。 --------------------编程问答-------------------- 把你的conn.open()放在 OleDbConnection objConnection = new OleDbConnection(strConnect); 
这句之后,如果还不对,就要检查你的连接语句是否正确 --------------------编程问答-------------------- 连接语句是这个,请各位高手帮我看看!<add key="connStr" value="Provider=MSDAORA;Data Source=ORACLE;User Id=SYSTEM;Password=zj422528;Database=ORACLE;Integrated Security=no"></add>
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,