0

我的工作是维护一个使用 ASP.NET 和 Mysql 数据库的网站。

网站和数据库部署在同一台物理机上。

这几天发生了一件有趣的事情。

我使用 C# 代码 mysqlclient lib 在后面的代码中编写代码,将超过 50K 的记录插入 mysql 数据库。

我用过交易。

如果我在本地机器上运行代码以插入远程 mysql 服务器,一切都很好。

但是,在我将此代码发布到服务器之后。仅插入了 6827 条记录,并且每次的记录数相同。并且没有抛出异常。

有没有人知道原因?

此致,

赵菲利克斯

我的代码显示如下:

        public bool UpdateEGNAL(DataSet ds)
    {
        bool result = true;

        #region Query String

        string sql = @"INSERT INTO eg_named_account_list (Csg_Segment,Stm,L0_Id,L0_Account,Geography,Province,City,City_Id,A_Id,L2_AMID,L2_Account,A_Id_City_Id...@SWD_Effective_Month)";
        #endregion

        using (MySql.Data.MySqlClient.MySqlConnection conn = new MySql.Data.MySqlClient.MySqlConnection(Connectionstr))
        {
            conn.Open();
            foreach (DataRow r in ds.Tables[0].Rows)
            {
                MySql.Data.MySqlClient.MySqlCommand cmd = conn.CreateCommand();
                cmd.CommandText = sql;
                cmd.Parameters.Clear();

                cmd.Parameters.AddWithValue("@Csg_Segment", r["Csg Segment"]);
                cmd.Parameters.AddWithValue("@Stm", r["Stm"]);
                cmd.Parameters.AddWithValue("@L0_Id", r["L0 Id"]);
                cmd.Parameters.AddWithValue("@L0_Account", r["L0 Account"]);
                cmd.Parameters.AddWithValue("@Geography", r["Geography"]);
                cmd.Parameters.AddWithValue("@Province", r["Province"]);
                cmd.Parameters.AddWithValue("@City", r["City"]);
                cmd.Parameters.AddWithValue("@City_Id", r["City Id"]);
                cmd.Parameters.AddWithValue("@A_Id", r["A Id"]);
                cmd.Parameters.AddWithValue("@L2_AMID", r["L2 AMID"]);
                cmd.Parameters.AddWithValue("@L2_Account", r["L2 Account"]);
                cmd.Parameters.AddWithValue("@A_Id_City_Id", r["A Id-City Id"]);
                cmd.Parameters.AddWithValue("@Dta", r["Dta"]);
                cmd.Parameters.AddWithValue("@L2_Customer_Segment", r["L2 Customer Segment"]);
                cmd.Parameters.AddWithValue("@Siebel_Row_ID", r["Siebel Row ID"]);
                cmd.Parameters.AddWithValue("@AM_SubTeam", r["AM SubTeam"]);
                cmd.Parameters.AddWithValue("@AM_Manager", r["AM Manager"]);
                cmd.Parameters.AddWithValue("@AM", r["AM"]);
                cmd.Parameters.AddWithValue("@AM_Email", r["AM Email"]);
                cmd.Parameters.AddWithValue("@AM_Effective_Month", r["AM Effective Month"]);
                cmd.Parameters.AddWithValue("@BCS_SubTeam", r["BCS SubTeam"]);
                cmd.Parameters.AddWithValue("@BCS_Manager", r["BCS Manager"]);
                cmd.Parameters.AddWithValue("@BCS", r["BCS"]);
                cmd.Parameters.AddWithValue("@BCS_Email", r["BCS Email"]);
                cmd.Parameters.AddWithValue("@BCS_Effective_Month", r["BCS Effective Month"]);
                cmd.Parameters.AddWithValue("@ESS_SubTeam", r["ESS SubTeam"]);
                cmd.Parameters.AddWithValue("@ESS_Manager", r["ESS Manager"]);
                cmd.Parameters.AddWithValue("@ESS", r["ESS"]);
                cmd.Parameters.AddWithValue("@ESS_Email", r["ESS Email"]);
                cmd.Parameters.AddWithValue("@ESS_Effective_Month", r["ESS Effective Month"]);
                cmd.Parameters.AddWithValue("@ISR_SubTeam", r["ISR SubTeam"]);
                cmd.Parameters.AddWithValue("@ISR_Manager", r["ISR Manager"]);
                cmd.Parameters.AddWithValue("@ISR_Manager_Phone", "");// r["ISR Manager Phone"]);
                cmd.Parameters.AddWithValue("@ISR", r["ISR"]);
                cmd.Parameters.AddWithValue("@ISR_Phone", "");//r["ISR_Phone"]);
                cmd.Parameters.AddWithValue("@ISR_Email", r["ISR Email"]);
                cmd.Parameters.AddWithValue("@ISR_SRID", r["ISR SRID"]);
                cmd.Parameters.AddWithValue("@ISR_Effective_Month", r["ISR Effective Month"]);
                cmd.Parameters.AddWithValue("@ISS_SubTeam", r["ISS SubTeam"]);
                cmd.Parameters.AddWithValue("@ISS_Manager", r["ISS Manager"]);
                cmd.Parameters.AddWithValue("@ISS", r["ISS"]);
                cmd.Parameters.AddWithValue("@ISS_Email", r["ISS Email"]);
                cmd.Parameters.AddWithValue("@ISS_Effective_Month", r["ISS Effective Month"]);
                cmd.Parameters.AddWithValue("@SWD_SubTeam", r["SWD SubTeam"]);
                cmd.Parameters.AddWithValue("@SWD_Manager", r["SWD Manager"]);
                cmd.Parameters.AddWithValue("@SWD", r["SWD"]);
                cmd.Parameters.AddWithValue("@SWD_Email", r["SWD Email"]);
                cmd.Parameters.AddWithValue("@SWD_Effective_Month", r["SWD Effective Month"]);
                result &= cmd.ExecuteNonQuery() > 0;
            }
        }

        return result;
    }
4

0 回答 0