[英]C# to SQLite Email String
尝试将电子邮件地址从.NET应用程序存储到SQLite数据库中。 该数据库是在SQLite Studio中预先构建的,我已经将项目连接到该数据库。
问题是,当我尝试通过以下方式将电子邮件地址(字符串)传递到数据库时:
Account.Email = test@test.com
string SQLText = "INSERT " + "INTO Account (Email) " + "VALUES (" + Account.Email + ")"
SqliteCommand Command = new SQLiteCommand (SQLText, Base);
Command.ExecuteNonQuery ();
Account是保存电子邮件字符串的类,Base是对使用C#的数据库的引用。
我懂了
SQLiteSyntaxException:在“ @Test”附近:语法错误
我应该对字符串做些什么,以使其忽略sql中的@作为参数声明?
有什么建议吗?
肖恩
我不特别了解sqlite
,但是据我一般的SQL语法知识,结果语句应如下所示(假设电子邮件地址为email@test.com
):
INSERT INTO Account(Email) Values ('email@test.com')
但是您的代码会产生以下语句:
INSERT INTO Account(Email) Values (email@test.com)
您会注意到第二行缺少单引号。
另外,您可能想研究什么是SQL注入攻击。 通过将字符串与用户输入连接在一起来构建查询,这使您容易受到这种攻击。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.