sql += "'" + col.Table.Rows[tabParams.Rownum][col.Ordinal].ToString()+ "',";
使用for循环对SQL语句进行拼接的时候,循环到某个字段,不管怎么自加字符串的值都不变,得到的SQL语句是不完整的,如下
insert into jk_sample (FBMMC,FGZJH,FSBMC,FSBBH,FSBXH,x_Number,x_Name,x_Method,Weight,Moisture,SulfurArea,SulfurPeak,SulfurTime,Stad,Std,x_Date,x_Operator,Memo,initVolt,lparam,x,y)
values('化学室','222','全自动测硫仪','03','5E-IRS3600','20200226045','A0588782','20191210','0.2968','0.68','3.32760320899911','0.105281323418624','154','2.47854333257062','2.47854333257062','2020/2/26 18:05:40','
后来查了一些网上的资料得知\0代表字符串的终止,而循环到的那个字段值就是\0。
C#对字符串自加,末尾出现\0,就会终止对此字符串的所有操作
因此需要将\0字符替换掉,就可以对字符串正常操作了
sql += "'" + col.Table.Rows[tabParams.Rownum][col.Ordinal].ToString().Replace("\0","") + "',";
insert into jk_sample (FBMMC,FGZJH,FSBMC,FSBBH,FSBXH,x_Number,x_Name,x_Method,Weight,Moisture,SulfurArea,SulfurPeak,SulfurTime,Stad,Std,x_Date,x_Operator,Memo,initVolt,lparam,x,y)
values('化学室','222','全自动测硫仪','03','5E-IRS3600','20200226045','A0588782','20191210','0.2968','0.68','3.32760320899911','0.105281323418624','154','2.47854333257062','2.47854333257062','2020/2/26 18:05:40',' ','','8.563','217',:IMAGEDATA,:IMAGEDATA)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构