insert - 无法使用 C# 将数据插入 SQL Server
问题描述
我正在尝试将数据插入数据库,首先我使用托盘捕获和调试。没有错误,但没有插入数据。然后我删除 try catch 并找到这个:
"Cannot insert the value NULL into column 'ContactID', table 'Contact_DB3.dbo.TContacts'; column does not allow nulls."
我的输入不是空的,我该如何解决这个问题?
public bool Insert(string name, string family, string mobile)
{
SqlConnection connection = new SqlConnection(connectionstring);
string query = "insert into TContacts (Name,Family,Mobile) Values ( @Name , @Family , @Mobile ) ";
SqlCommand command = new SqlCommand(query, connection);
command.Parameters.AddWithValue("@Name", name);
command.Parameters.AddWithValue("@Family", family);
command.Parameters.AddWithValue("@Mobile", mobile);
connection.Open();
command.ExecuteNonQuery();
return true;
connection.Close();
}
解决方案
如果根据您的问题,您的表不允许为空,则该列是 ContactID。你可以做两件事之一。
- 从您的代码中使用 GUID 生成一个 ID 并将其传递给 save 调用。或者
- 将表中的ContactID设置为标识列类型
推荐阅读
- haskell - 错误处理:不正确的缩进 Haskell
- javascript - 如何根据特定键对嵌套数组的索引进行排序?
- javascript - 在 reactjs 中使用 fetch 检查“管理员”或“用户”
- mongodb - 基于嵌套数组字段的最后一个元素的Spring数据MongoDb查询
- sql - 从有条件的表中获取计数的最快方法?
- apache-spark - Spark SQL 的第一个入口点
- c++ - “DRM_IOCTL_MODE_GETRESOURCES”不等于 drm.h 中定义的“0xA0”
- javascript - 将 HTML 块传递给 React 组件的全局 JS 变量
- mongodb - MongoDB $text 是否容易受到 NoSQL 注入的影响?如果是这样,如何?
- nativescript - NativeScript DepreciationWarning : parse() 已弃用。改用 Builder.parse()