SQL记录条目,不同的测试用例
本文关键字:测试用例 记录 SQL | 更新日期: 2023-09-27 18:36:31
关于 C# 存储过程的小问题...和一般的 SQL 数据库: 将变量值从 C# 传递到存储过程时,有时
INSERT INTO tablename (column1 name, column2 name, column3 name, columnN name)
VALUES (@the actual values1, @values2, @valueN);
其他时候你没有列名,只有输入的值......如果我输入这样的东西会发生什么(假设表有 3 列,分别是"鲍勃"、"灰烬"和"将"):
INSERT INTO tablename (bob, will) VALUES ("hi","hello");
OR
INSERT INTO tablename (bob, will) VALUES ("hi","hello","okay");
OR
INSERT INTO tablename (bob, will) VALUES ("hello");
它将如何影响参赛作品?
第一个查询会将默认值插入ash
,其他两个查询不会解析。
正如Quassnoi和Marco指出SQL方面的错误问题。
在 C# 中调试时,您将收到以下错误。
INSERT 语句中的列数少于指定的值 在值子句中。值子句中的值数必须 匹配 INSERT 语句中指定的列数。
第一个查询正确插入该记录(如果没有主键冲突)。
第二个查询失败,因为您有三个值和两个字段。
第三个查询失败,因为两个字段有一个值。
在SQL中,第一个查询成功执行,而对于第二个查询,你将得到以下错误:INSERT 语句中的列数少于 VALUES 子句中指定的值。VALUES 子句中的值数必须与 INSERT 语句中指定的列数匹配。第三个查询也会产生以下错误:INSERT 语句中的列数多于 VALUES 子句中指定的值。VALUES 子句中的值数必须与 INSERT 语句中指定的列数匹配。