簡體   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