//创建 SqlSugar 实例 var db = new SqlSugarClient(new ConnectionConfig() { ConnectionString = "your_connection_string", DbType = DbType.MySql, //数据库类型 IsAutoCloseConnection = true, //开启自动释放模式 }); //使用 SELECT 语句查询数据 var data = db.SqlQueryable<T_GC_DRUG_INFO>("SELECT ID,YPNBBM,YPTYMC,BZGG,YPPZWH,JNYPSCQYMC,SCR,TYSHXYDMSCR,SCSJ,YPFL,YPYWMC,TSYPGLFL,TYSHXYDMJNYPSCQY FROM T_GC_DRUG_INFO").ToList(); var data2 = db.SqlQueryable<GCinfo>("SELECT ID,YPNBBM,YPTYMC,BZGG,YPPZWH,JNYPSCQYMC,SCR,TYSHXYDMSCR,SCSJ,YPFL,YPYWMC,TSYPGLFL,TYSHXYDMJNYPSCQY FROM GCinfo").ToList(); 比较data 与data2 的差异,并将差异数据保存到 T_GC_DRUG_INFO表中。
时间: 2024-02-12 16:04:41 浏览: 204
MySql.Data.zip_MYSQL_MySql.Data_c# MySql.Data.dll_c# mysql_数据库
首先,我们需要比较 data 和 data2 两个列表的差异。可以通过遍历 data2 列表,在 data 列表中查找是否存在相同的记录,如果不存在,则将该记录插入到 T_GC_DRUG_INFO 表中。
以下是示例代码:
```
//遍历 data2 列表
foreach(var item in data2)
{
//在 data 列表中查找是否存在相同的记录
var existItem = data.FirstOrDefault(x => x.ID == item.ID && x.YPNBBM == item.YPNBBM && x.YPTYMC == item.YPTYMC && x.BZGG == item.BZGG && x.YPPZWH == item.YPPZWH && x.JNYPSCQYMC == item.JNYPSCQYMC && x.SCR == item.SCR && x.TYSHXYDMSCR == item.TYSHXYDMSCR && x.SCSJ == item.SCSJ && x.YPFL == item.YPFL && x.YPYWMC == item.YPYWMC && x.TSYPGLFL == item.TSYPGLFL && x.TYSHXYDMJNYPSCQY == item.TYSHXYDMJNYPSCQY);
//如果不存在相同的记录,则将该记录插入到 T_GC_DRUG_INFO 表中
if(existItem == null)
{
db.Insertable(item).ExecuteCommand();
}
}
```
需要注意的是,上述代码只比较了每条记录的所有字段是否相同,如果存在其他业务逻辑需要考虑,还需要进行相应的处理。同时,为了避免重复插入数据,可以在 T_GC_DRUG_INFO 表中添加联合主键约束,例如:
```
ALTER TABLE T_GC_DRUG_INFO ADD PRIMARY KEY(ID, YPNBBM, YPTYMC);
```
阅读全文