HeidiSQL怎么设置NULL背景为黑色

sql中如何将已经赋值的字段变为原有的null

哈,你的问题有点意思。
它包括SQL操作和变量的使用。
让我向你解释一下。

1 . 用于创建新查询和更改 Finish_time 的 SQL 语法 你写的语句有一点小问题。
应该是这样的: sql 更新 p_orders SET 完成时间 = NULL WHERE id = 'XXXX';
注意:
表名和列名前面必须有空格。

“XXXX”必须代表特定的标识符值,例如“1 001 ”。

我偶然发现的陷阱:我已经这样做过一次了,但忘记添加空格。
结果SQL执行报错,提示找不到p_orders。
我当时很疑惑,但看了之后就想起来了。

2 . 通过双击更改 Navicat 中的 Finish_time 这个方法其实是可行的,步骤如下: 1 . 在 Navicat 中打开 p_order 表。
2 . 按Ctrl + A 全选,然后按F5 刷新,确保按时间排序。
3 . 双击查找具有目标ID 的条目。
4 . 找到 Finish_time 列,右键单击并选择设置为 NULL。

但请注意,此操作的前提是Finish_time列可以为NULL。
如果项目中不允许这样做,那么右键单击该选项将根本不可用。

我上次在一个项目中遇到了这个问题:有一个由其他人创建的表,他们忘记允许特定时间列为 NULL。
结果我无法通过右键更改,只能使用SQL语句。

扩展信息:关于变量@和@@的区别 你的信说得很清楚。
我再补充几点:
局部变量(@) sql -
声明 DECLARE @num INT;
-
赋值 设置@num = 1 0; -
或者 选择@num = 2 0;
注意:
局部变量仅在当前包或存储过程内有效。

您可以使用 SELECT 一次为多个变量赋值: sql 声明 @a INT、@b VARCHAR(1 0); 选择@a = 1 ,@b = '测试';
全局变量 (@@) sql -
例如获取当前数据库的ID SELECT @@DB_ID('master');
差异简述:
@:部分,自行决定。

@@:系统内置于 SQL Server 中。

最后,一个小解决方法 你的高级信息已经很清楚了,但是实际使用的时候需要注意场景。
例如,上次写存储过程时,我使用@variables来传递参数。
结果,由于嵌套层次太多,局部变量变得混乱,调试花了我很长时间。

我的建议:
如果是简单的修改,在Navicat上右键就方便了。

如果是批量修改或者逻辑比较复杂,还是应该用SQL语句来写。

不要盲目地命名变量。
就像我上次使用了@temp,但后来我不得不检查另一个直接冲突的临时表。

无论如何,都由你决定。
这并不难。

如何把数据库中NULL值设置为0

粗略地说,设置默认值是处理数据库中缺失字段值的常用技术。
其实很简单。
具体操作分为两种情况。
我们先来说说最重要的事情。
如果数据还没有导入,一般的做法是把表中该字段的默认值设置为0,所以在添加新字段的时候,如果该字段没有赋值,那么就会默认为0。
还有一点:如果数据已经导入,可以使用修改语句来改变表中满足一定条件的字段的值,将其设置为0,例如使用update表名,set table field = '0' where....
一开始我以为,默认的就是Default值的设置是一个简单的赋值,但后来我发现它是错误的。
不同数据库的调优方法其实差别很大。
等等,还有一个关键细节。
例如,在Oracle中,更改默认值的语句是更改表名、更改默认字段名(0);而在SQL Server中,您需要删除原始表的约束,然后添加新的约束并分配默认值。
具体语句是更改表名、去掉约束约束名、添加约束约束名、字段名默认值。

我认为值得一试,但是需要注意的是,如果你改变了数据库的结构,你需要先对其进行备份,万一出现问题,你可以恢复它。