繁体   English   中英

代码优化asp.net C#

[英]code optimisation asp.net c#

以下给定的代码在Web浏览器中需要花费无限长的时间才能加载,当我单击Button2时,我的浏览器将继续加载....并且不显示输出。 我可以在下面给出的代码中做什么以提高处理速度。

protected void Button2_Click(object sender, EventArgs e)
    {
        String a = DropDownList1.SelectedItem.Value;
        String b = DropDownList3.SelectedItem.Value.PadLeft(3, '0');      
        String c = TextBox2.Text.PadLeft(5,'0').ToString();
        String d = TextBox3.Text.ToString();
        String digit = a+ b  + c + d;
        string sql = "select * from testcase.main where reg_no =?";
        string sql1 = "select jname, jcode from heardt inner join judge ON heardt.jud1 = jcode";

try
            {
                using (OdbcConnection myConn = new OdbcConnection("Driver={MySQL ODBC 3.51 Driver};Server=localhost;Database=testcase;User=root;Password=root;Option=3;"))
                {  
                     using (OdbcCommand cmd = new OdbcCommand(sql, myConn)) 
                        {
                            myConn.Open();
                            cmd.Parameters.AddWithValue("?", digit);
                            using (OdbcDataReader MyReader = cmd.ExecuteReader())
                                 {
                                    //**
                                    while (MyReader.Read())
                                    {
                                        String f = MyReader["pet_name"].ToString();
                                       String g = MyReader["res_name"].ToString();

                                        Label9.Visible = true;
                                        Label9.Text = f;

                                        Label10.Visible = true;
                                        Label10.Text = "VS";

                                        Label11.Visible = true;
                                        Label11.Text = g;

                                     }
                                 }
                         }
                }
            }
            catch (Exception e1)
            {
                Response.Write(e1.ToString());
            }
//***********************
try
        {
            using (OdbcConnection myConn = new OdbcConnection("Driver={MySQL ODBC 3.51 Driver};Server=localhost;Database=testcase;User=root;Password=root;Option=3;"))
            {
                using (OdbcCommand cmd1 = new OdbcCommand(sql1, myConn))
                {
                    myConn.Open();

                    using (OdbcDataReader MyReader1 = cmd1.ExecuteReader())
                    {
                        //**
                        while (MyReader1.Read())
                        {
                            String f = MyReader1["jname"].ToString();
                            DropDownList4.Items.Add(f);

                        }
                    }
                }
            }
        }
        catch (Exception ee1)
        {
            Response.Write(ee1.ToString());
        }
 }

还有其他方法可以在不使用联接操作的情况下执行以下查询吗?

select jname, jcode from heardt inner join judge ON heardt.jud1 = jcode

1-看该查询是否选择了jname,从heart内部联接判断jcode到ontedt.jud1 = jcode花费多少时间。

2-看看是否可以为MySQL使用ODBC以外的其他驱动程序,并且我假设您正在使用MySQL数据库

  1. 您真的需要从第一个sql中获取所有列吗? (“选择 *...”)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM