大佬代码竟然这样写?看完后大吃一惊!

本文介绍了在编程工作中如何使用string.Join方法优化SQL更新语句,对比了传统直接拼接字符串的方法,强调了在字段数量大时使用List<string>结合Join方法的优势,使得代码更整洁、易维护。

string.Join的特殊用法

今天在工作中看到了大佬写的一段代码,大为吃惊,对比之前写sql语句完全是费时费力,特此总结一下:

      string sqll = "SELECT a.VhcNum,b.DriverMan,b.Mobile,b.DriverCode from       MdEquipment as a " + "  LEFT JOIN MDDrivers as b on a.EquipmentID = b.EquipMentID where IsCheck ='1' and MarkDel ='0' and a.VhcNum ='" + VhcNum + "'";
      DataTable dtt = dbt.QueryDataTable(sqll);
      string Cardholder = dtt.Rows[0]["DriverMan"].ToString();
      string Card = dtt.Rows[0]["DriverCode"].ToString();
      string Tel = dtt.Rows[0]["Mobile"].ToString();

      #region  方法1
      List<string> values = new List<string>();
      values.Add("CompSign=1");
      values.Add("SendSucc=0");
      if (!string.IsNullOrEmpty(Cardholder)) values.Add("Cardholder='" + Cardholder + "'");
      if (!string.IsNullOrEmpty(Tel)) values.Add("Tel='" + Tel + "'");
      if (!string.IsNullOrEmpty(Card)) values.Add("Card='" + Card + "'");
      string setSql = string.Join(",", values.ToArray());
      strSql = "UPDATE uVhcReg set " + setSql + " where VhcRegNO='" + VhcRegNO + "'";
     #endregion

     #region  方法2
      strSql = "UPDATE uVhcReg set CompSign=1,SendSucc=0,Cardholder='" + Cardholder + "', Tel='" + Tel + "', Card='" + Card + "' where VhcRegNO='" + VhcRegNO + "'";
     #endregion

方法2:是直接拼sql语句,字段少还好说,一旦数量大就容易出错。
方法1:重点是string里边的Join()方法,通过一个list数组,将要修改的字段数据保存,通过Join方法进行格式转换,最后拼接到sql语句中。

这样一修改,代码更加整体,易修改,简介明了,Nice~
这里是井队,天高任鸟飞,海阔凭鱼跃,点个关注不迷路,我们下期再见。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

井队Tell

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值