SQL添加字符串作为参数

时间:2010-06-21 01:39:00

标签: c#

//cmd.CommandText = @"select MaKH from KHACHHANG where HoTenKH='a'";
cmd.CommandText = @"select MaKH from KHACHHANG where HoTenKH=$tenKH";
cmd.Parameters.Add(new SQLiteParameter("$tenKH", tenKH));

评论行有效,cmd是DbCommand,我试过

cmd.CommandText = @"select MaKH from KHACHHANG where HoTenKH='$tenKH'";

但它也不起作用。

3 个答案:

答案 0 :(得分:2)

这看起来很愚蠢,但你确定要这样做:

string tenKH = "a";

在此之前:

cmd.CommandText = @"select MaKH from KHACHHANG where HoTenKH = @tenKH";
cmd.Parameters.Add(new SQLiteParameter("@tenKH", tenKH));

答案 1 :(得分:1)

使用@符号代替$来为参数名称添加前缀

答案 2 :(得分:1)

SQLite使用冒号来指定命名参数,而不是美元符号。尝试

cmd.CommandText = @"select MaKH from KHACHHANG where HoTenKH=:tenKH";
cmd.Parameters.Add(new SQLiteParameter("tenKH", tenKH));

如果希望代码看起来更像SQL Server代码,也可以使用@符号:

cmd.CommandText = @"select MaKH from KHACHHANG where HoTenKH=@tenKH";
cmd.Parameters.Add(new SQLiteParameter("tenKH", tenKH));