command.Parameters.Add("@name",DbType.String).Value = name;
有没有更简单的方法?我很乐意做类似的事情
command.command.CommandTextFn("insert into tbl(key,val) values(?,?);",key,value);
并确定键/值是字符串还是int.我不介意我是否必须使用{0}而不是?
解决方法 使用 AddWithValue方法:command.Parameters.AdDWithValue( "@name",name );
您可以将此与扩展方法结合使用:
public static sqlCommand CreateCommand(this sqlConnection connection,string command,string[] names,object[] values ){ if (names.Length != values.Length) { throw new ArgumentException("name/value mismatch"); } var cmd = connection.CreateCommand(); cmd.CommandText = command; for (int i = 0; i < names.Length; ++i ) { cmd.Parameters.AdDWithValue(names[i],values[i]); } return cmd;}
用作
var command = connection.CreateCommand( "insert into tbl (key,val) values(@key,@val)",new string[] { "@key","@val" },new object[] { key,val } );总结
以上是内存溢出为你收集整理的c# – 逃脱sql字符串的简单方法?全部内容,希望文章能够帮你解决c# – 逃脱sql字符串的简单方法?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)