SQL Server 查询进行空控制

标签 sql sql-server database sql-server-2008 sql-insert

我正在使用 SQL Server Management Studio。在插入数据时,如果我插入的列数少于建议的列数 - 例如,有 4 列,而我只插入了 2 条数据 - 那么 NULL 将出现在其他 2 列中。

但是,如果列数据受到空值保护,我是否必须给出我不想放置值的特定值?像 0 或 '' 之类的东西。

有没有办法自动为其他列赋值而不为空?

最佳答案

在 SQL Server Management Studio 中,以设计模式打开表,并在默认值或绑定(bind)中设置所需的值..

如下所示

enter image description here

如果你想使用查询创建表,那么你可以使用

CREATE TABLE YourTable
(
   P_Id int NOT NULL,
   Val1 varchar(255),
   Val2 varchar(255),
   Val3 varchar(255),
   Val4 varchar(255) DEFAULT 'YourDefault Value will be Here'
) 

在上面的示例中,如果您的 Insert 语句中不包含 val4,则 val4 中将保存“YourDefault Value will be Here”,如果您不包含 val1、val2、val3,则将保存 Null

关于SQL Server 查询进行空控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31358258/

相关文章:

java - 如何在 NotesDocument 中存储 JDBC 服务器、数据库、用户名和密码

mongodb - 根据权限字段选择字段

java - 只有最后一个值是从 jTable 中的数据库打印的

sql-server - 为什么 SQL Server 上的查询速度慢而过程速度快?

MySQL View 连接多行表

SQL删除查询优化

sql - 插入语句试图包含重复键

sql-server - 我可以随我的应用程序一起分发和安装 SQL Server Server 管理对象吗?

sql - 递归 CTE 通过经理获取员工

mysql - 检测数据集中的变化