$语句修改成string.Format语句

杨译733 2021-04-03 10:49:38
string sqlString =$"insert into Students(StudentName,Gender,Birthday,AttendanceNO,Stulmage,Age,Phone,StudentAddress)VALUES({students.StudentName},{students.Gender},{students.Birthday},{students.AttendanceNO},{students.Stulmage},{students.Age},{students.Phone},{students.StudentAddress})";
...全文
292 7 打赏 收藏 举报
写回复
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
morliz子轩 2021-04-24
这写的啥玩意,裹脚布似的。

string sqlString =$"

insert into Students(

	StudentName,
	Gender,
	Birthday,
	AttendanceNO,
	Stulmage,Age,
	Phone,
	StudentAddress
)
VALUES(
	{students.StudentName},
	{students.Gender},
	{students.Birthday},
	{students.AttendanceNO},
	{students.Stulmage},
	{students.Age},
	{students.Phone},
	{students.StudentAddress})
";
把所有的值,写到一个一个型参组SQLParameter[],它不香吗?这年头,还在用拼接语句来insert、update都是顽固份子了。
  • 打赏
  • 举报
回复
sql = @"INSERT INTO TASBLE_A ( A,B) VALUES ('{0}','{1}')"; sql = string.Format(sql, a,"b"); sqlList.Add(sql); 参数化结构
  • 打赏
  • 举报
回复
杨译733 2021-04-04
引用 2 楼 protossgxh 的回复:
楼主的写法挺好的,没有必要改。
你好,$语句修改成string.Format语句。那这句话怎么改呢,string sqlString =$"insert into Students(StudentName,Gender,Birthday,AttendanceNO,Stulmage,Age,Phone,StudentAddress)VALUES({students.StudentName},{students.Gender},{students.Birthday},{students.AttendanceNO},{students.Stulmage},{students.Age},{students.Phone},{students.StudentAddress})";
  • 打赏
  • 举报
回复
杨译733 2021-04-04
那怎么改呀,我是新手不会改。
  • 打赏
  • 举报
回复
X-i-n 2021-04-03
string.Format("……{0}……{2}……{1}……{1}", str0, str1, str2); 最终会得到"……str0……str2……str1……str1" 也就是:按序号所对应的参数对模板进行插值替换。 说句题外的,你这种情况,可以考虑升级一下c#版本,及时更新自己的知识库是一件有益的事。
  • 打赏
  • 举报
回复
X-i-n 2021-04-03
刚反应过来,你这sql有问题。如果一定要用拼接的方法生成sql,那么非数值的字段需要在两侧用引号手感起来。当然最好的选择是用参数化查询。
  • 打赏
  • 举报
回复
protossgxh 2021-04-03
楼主的写法挺好的,没有必要改。
  • 打赏
  • 举报
回复
发帖
C#

10.8w+

社区成员

.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
帖子事件
创建了帖子
2021-04-03 10:49
社区公告

让您成为最强悍的C#开发者