mysql是不是有个问题,某列不能为null,但是没有设置主键,这个用户逻辑删除的话,再添加相同的数据,是会报错的 为什么会出现这种情况
时间: 2023-05-22 22:04:08 浏览: 50
是的,如果某列不能为null但又没有设置主键,用户进行逻辑删除再添加相同的数据时会报错,这是因为MySQL的唯一性约束要求每行数据的主键值是唯一的,如果没有设置主键,则MySQL无法判断唯一性,从而导致重复数据的添加失败。
相关问题
mysql 删除某列不为null的记录
可以使用以下 SQL 语句删除某列不为 NULL 的记录:
```
DELETE FROM table_name WHERE column_name IS NOT NULL;
```
其中,`table_name` 是要删除记录的表名,`column_name` 是不为 NULL 的列名。上述 SQL 语句将删除 `table_name` 表中 `column_name` 列不为 NULL 的所有记录。
写一个mysql语句,把得分列显示为空但是不是null值转换为null值
可以使用 `UPDATE` 语句来实现将得分列中的空字符串转换为 `NULL` 值,示例如下:
```
UPDATE your_table SET score = NULL WHERE score = '';
```
其中,`your_table` 是需要更新的表名,`score` 是需要转换的列名。这条语句将得分列中的空字符串(非 `NULL` 值)更新为 `NULL` 值。