C# c上的一个或多个必需参数未给出值
这是我第一次在c和MySQL上编写代码,如果我的代码凌乱,我很抱歉 我的数据库来自Ms Access,我正在尝试通过c应用程序将所有数据迁移到MySQL工作台 下面是我的代码C# c上的一个或多个必需参数未给出值,c#,mysql,ms-access,C#,Mysql,Ms Access,这是我第一次在c和MySQL上编写代码,如果我的代码凌乱,我很抱歉 我的数据库来自Ms Access,我正在尝试通过c应用程序将所有数据迁移到MySQL工作台 下面是我的代码 sqlcomm = "SELECT Product_Name,Product_ID,Product_Category,Quantity,Location,Manufacturer,Remark,QR_Code,Description,MinQuantity,Color_Type,Owner,Project_Name FRO
sqlcomm = "SELECT Product_Name,Product_ID,Product_Category,Quantity,Location,Manufacturer,Remark,QR_Code,Description,MinQuantity,Color_Type,Owner,Project_Name FROM Inventory_Management ";
adapter1 = new OleDbDataAdapter(sqlcomm, conn);
OleDbCommandBuilder builder = new OleDbCommandBuilder(adapter1);
dt1.Reset();
adapter1.Fill(dt1);
if (dt1.Rows.Count > 0)
{
DataTable dt_Tbl = new DataTable();
dt_Tbl.Columns.Add("Product_Name");
dt_Tbl.Columns.Add("Product_ID");
dt_Tbl.Columns.Add("Product_Category");
dt_Tbl.Columns.Add("Quantity");
dt_Tbl.Columns.Add("Location");
dt_Tbl.Columns.Add("Manufacturer");
dt_Tbl.Columns.Add("Remark");
dt_Tbl.Columns.Add("QR_Code");
dt_Tbl.Columns.Add("Description");
dt_Tbl.Columns.Add("MinQuantity");
dt_Tbl.Columns.Add("Color_Type");
dt_Tbl.Columns.Add("Owner");
dt_Tbl.Columns.Add("Project _Name");
for (int i = 0; i < dt1.Rows.Count; i++)
{
List<string> list = new List<string>();
DataRow r = dt1.Rows[i];
DataRow dr;
dr = dt_Tbl.NewRow();
dr = r;
dt_Tbl.Rows.Add(dr);
//string crd = r["Product_Name"].ToString();
//list.Add(r["Product_ID"].ToString());
//list.Add(r["Product_Category"].ToString());
//list.Add(r["Quantity"].ToString());
//list.Add(r["Location"].ToString());
//list.Add(r["Manufacturer"].ToString());
//list.Add(r["Remark"].ToString());
//list.Add(r["QR_Code"].ToString());
//list.Add(r["Description"].ToString());
//list.Add(r["MinQuantity"].ToString());
//list.Add(r["Color_Type"].ToString());
//list.Add(r["Owner"].ToString());
//list.Add(r["Project _Name"].ToString());
}
conn.Close();
return dt_Tbl;
}
else
return null;
}
catch (Exception ex)
{
return null;
}
}
我在代码中遗漏了什么吗?
任何帮助都将不胜感激
非常感谢您正在从MS Access读取数据,并创建一个数据表并将其与数据一起加载。现在需要将数据表dt_Tbl写入MySQL数据库。因此,您需要打开到MySQL的连接并在其上运行insert命令,或者使用数据适配器将数据推送到MySQL 您可以通过编写函数稍微清理代码。不要试图在一个函数中做太多的事情
DataTable products = ReadProductsFromMSAccess();
WriteProductsToMySQL(products);
哪一行给出了错误?确切的异常消息是什么?它不显示异常消息,程序只是开始编译,没有给出任何错误。所以我使用断点逐行检查代码。在catch Exception ex中弹出错误,消息为“一个或多个必需参数未给定值”它不显示异常消息->删除try/catch,或使用调试器逐步检查代码以找出异常来自哪一行?按照您的建议后,异常位于SELECT Product_Name,库存管理中的产品标识、产品类别、数量、位置、制造商、备注、二维码、说明、最小数量、颜色类型、所有者、项目名称;。表示一个或多个必需参数没有给定值。我认为问题出在我的数据库中,因为有些列的输入没有任何数据,我在调试了几次之后才编译了它!很高兴能帮上忙。快乐编码!