我想知道如何在不知道 Id 的情况下在查询中使用插入命令,我的表由 Id 组成 ||美元 ||用户名和我的表名是信条
我试过执行插入命令,但无法弄清楚
我只是想知道如何在不知道有多少列的情况下获取 Id,所以说有 3 列,但我不知道如何制作新列。
ID 是主键
INSERT INTO creds VALUES(Id, 50, 'UserName')
在执行insert
时,您应该始终列出列:
INSERT INTO creds (dollars, username)
VALUES (50, 'UserName');
如果要列出id
列,请使用DEFAULT
:
INSERT INTO creds (id, dollars, username)
VALUES (DEFAULT, 50, 'UserName');
实际上,对于插入,您不需要知道 ID
INSERT INTO creds (Id, Dollars, Username) VALUES(50, 2000, 'UserName')
如果 Id 是 Identity,则不得将其包含在插入项中:
INSERT INTO creds (Dollars, Username) VALUES(2000, 'UserName')
仅当您更新表时,才需要 Id(可能是主键(:
Update creds set username = 'New Username' where Id = 50
如果"Id">列(字段("是可自动递增的,则"INSERT"查询不需要"Id">和值:
-- Don't need "Id" and the value
INSERT INTO creds (Dollars, Username) VALUES(2000, 'UserName')
如果"Id">列(字段("不可自动递增,则">INSERT"查询需要"Id">和值:
-- Here -- Here
INSERT INTO creds (Id, Dollars, Username) VALUES(13, 2000, 'UserName')
在表中插入值时,保留列名不是一个好的做法。但是你可以做这样的事情:
INSERT INTO creds VALUES(
(SELECT max(Id)+1 FROM creds), 50, 'UserName')
如果 Id 是整数主键。