Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果新行不存在,则添加新行并获取新id-MySQL_Mysql_Sql Insert_Insert Into_Insert Select - Fatal编程技术网

如果新行不存在,则添加新行并获取新id-MySQL

如果新行不存在,则添加新行并获取新id-MySQL,mysql,sql-insert,insert-into,insert-select,Mysql,Sql Insert,Insert Into,Insert Select,我有一张桌子 id(PK, AI) name(UQ) 1 mike 2 ashly 3 nash 我希望用户能够添加新名称。但是如果name已经存在,我不想再添加它,并获取已经存在的名称的id。如果名称不存在,我需要新名称的新id 我试过很多问题,但都不管用。这就是我不打算在这里写它们的原因 谢谢您的帮助。只需从表中选择*即可,其中name=ashly如果没有结果,请插入表name=ashly我不知道您想要什么。你说如果

我有一张桌子

id(PK, AI)  name(UQ)
1             mike
2             ashly
3             nash
我希望用户能够添加新名称。但是如果
name
已经存在,我不想再添加它,并获取已经存在的名称的
id
。如果名称不存在,我需要
新名称的
新id

我试过很多问题,但都不管用。这就是我不打算在这里写它们的原因


谢谢您的帮助。

只需从表中选择*即可,其中name=ashly如果没有结果,请插入表name=ashly我不知道您想要什么。你说如果
name
已经存在,你不想拿回该
name
的现有ID,你想要一个新ID的新行。但是你指出
name
列被约束为
唯一的
(我假设这就是
UQ
的意思)。如果该列受
UNIQUE
约束,则不能有两行具有相同的
名称
,。我在哪里说的?我说我要现有的名字idback@code如果sql中没有结果,我该怎么写?如果没有结果,那么你知道你可以将这个新名称插入数据库只需执行Select*FROM Table Where name=ashly如果没有结果,则插入Table name=ashly我不知道你想要什么。你说如果
name
已经存在,你不想拿回该
name
的现有ID,你想要一个新ID的新行。但是你指出
name
列被约束为
唯一的
(我假设这就是
UQ
的意思)。如果该列受
UNIQUE
约束,则不能有两行具有相同的
名称
,。我在哪里说的?我说我要现有的名字idback@code如果sql中没有结果,我将如何编写?如果没有结果,那么您知道可以将这个新名称插入数据库