我正在尝试验证我的 SQL 是否已正确执行,如果未正确执行,则返回错误。
我的代码:
var db = Database.Open("database");
db.Execute("INSERT INTO Users(Username, Email, FirstName, SecondName) VALUES(?,?,?,?)", username, email, firstName, secondName);
此外,如何使用 WebMatrix 将列标记为唯一?这似乎是我真正缺少的一个非常基本的功能!我想让电子邮件和用户名必须是唯一的,但我看不到任何方法可以做到这一点?我本质上希望测试 INSERT INTO 是否可以执行(即数据库中没有相同的电子邮件/用户名)。
感谢您的帮助。
最佳答案
对于你的第一个问题:
Execute
方法返回受影响的记录数,并且您的代码片段正在执行插入操作,因此如果失败,它将返回一个不等于 1 的值。
var db = Database.Open("database");
if (db.Execute("INSERT INTO Users(Username, Email, FirstName, SecondName) VALUES(?,?,?,?)", username, email, firstName, secondName) < 1)
throw new Exception("Wasn't able to insert User record");
第二个,我不确定,但可能应该在一个单独的问题中提出。
关于c# - 验证 SQL 在 WebMatrix/Razor 中是否正确执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9651952/