往MySQL写入数据报错 返回

SqlSugar 待处理
2 212
该叫什么 路路 发布于2周前
悬赏:5 飞吻

环境:.NetFramework4.8 下  WINFORM中

sqlsugar版本:最新稳定版5.1.4.207

Mysql.data版本:最新稳定版9.7.0

使用如下方法:

Db.Storageable(pageData)

                                              .WhereColumns(PrimaryKey.Split(','))

                                              .ToStorage();

                                    storage.AsInsertable.ExecuteCommand();

                                    storage.AsUpdateable .ExecuteCommand();


其中pageData是一个Datatable,要实现的是有则更新,没有则写入,

但是最后报错了

中文提示 :  请先升级MySql.Data 。 详细错误:未将对象引用设置到对象的实例。

English Message : To upgrade the MySql.Data. Error:未将对象引用设置到对象的实例。


我的MySql.Data已经是从NUGET包里整的最新的了


热忱回答2

  • Db.Fastest<DataTable>()

                                        //            .AS(dest_tablename)

                                        //            .BulkMerge(

                                        //                pageData,

                                        //                PrimaryKey.Split(','),

                                        //                pageData.Columns.Cast<DataColumn>().ToList().Select(p=>p.ColumnName).ToArray(),

                                        //                false

                                        //      );


    一开始我想用的是BulkMerge,但是这个在写入的时候是要求我的DataTable的结构必须和MySql的完全一致?
    后来改成了storage,就报了上面的错

    0 回复
  • 或者我能不能改为先storage.AsDeleteable.ExecuteCommand();然后再storage.AsInsertable.ExecuteCommand();
    这种先删后写,每次操作的数据量应该是几K ,这种替代方案可不可以

    0 回复