我有以下问题: 我不会在我的数据库中插入所有值。 所以,我只会插入id,tessera,nome,sex。我以为我必须写这样的东西:
INSERT INTO registries(id,tessera,'',nome,sex) VALUES (35983,35983,'DOG', 'FABIO', 'M')
我不想在我的数据库中插入DOG值,因为我的架构中没有任何属性可以保存它。 我有3000行,我把这一行作为例子,所以我不能简单地删除我的SQL查询中的DOG值和属性字段。 我记得我必须使用这样的东西
INSERT INTO registries(id,tessera,'',nome,sex)
我的意思是,我必须写''
以不考虑该位置的值。
但MySQL给了我一个错误..
你能帮助我吗?
答案 0 :(得分:0)
试试这个(假设dog是列名):
INSERT INTO registries (id,tessera,dog_name,nome,sex) VALUES (35983, 35983, '', 'FABIO', 'M')
如果允许dog_name为NULL(默认情况下是这样),你也可以不插入任何值,如下所示:
INSERT INTO registries (id,tessera,nome,sex) VALUES (35983, 35983, 'FABIO', 'M')
答案 1 :(得分:0)
您可以通过以下方式处理这种情况。
在同一台服务器上创建临时表。在临时表中插入所有数据,然后使用insert into select语句并选择必填字段。
创建临时列并在该列中插入数据并删除临时列
INSERT INTO registries (id,tessera,new_column,nome,sex)
VALUES (35983, 35983, '', 'FABIO', 'M');
现在
DROP COLUMN new_column from registries;