让我们首先创建一个表-
mysql> create table DemoTable1 ( Id int, Name varchar(100) );
使用插入命令在表中插入一些记录-
mysql> insert into DemoTable1 values(1001,'Chris'); mysql> insert into DemoTable1 values(999,'Robert'); mysql> insert into DemoTable1 values(1003,'Mike'); mysql> insert into DemoTable1 values(1002,'Sam');
使用select语句显示表中的所有记录-
mysql> select *from DemoTable1;
这将产生以下输出-
+------+--------+ | Id | Name | +------+--------+ | 1001 | Chris | | 999 | Robert | | 1003 | Mike | | 1002 | Sam | +------+--------+ 4 rows in set (0.00 sec)
以下是创建第二个表的查询-
mysql> create table DemoTable2 ( StudentId int, StudentFirstName varchar(100) );
使用insert命令在表中插入一些记录。在这里,我们将最大ID值从第一个表插入到第二个表的StudentID列中-
mysql> insert into DemoTable2(StudentId,StudentFirstName) select (select Max(Id) from DemoTable1), Name from DemoTable1; Records: 4 Duplicates: 0 Warnings: 0
使用select语句显示表中的所有记录-
mysql> select *from DemoTable1;
这将产生以下输出-
+-----------+------------------+ | StudentId | StudentFirstName | +-----------+------------------+ | 1003 | Chris | | 1003 | Robert | | 1003 | Mike | | 1003 | Sam | +-----------+------------------+ 4 rows in set (0.00 sec)
问题内容: 我想获取表中最后一个ID插入的值。我该怎么做? 问题答案: 好吧,我使用的解决方案是: 这将从插入数据库的最后一行获取id列:)
我试图在从一个表创建一个值后将其插入另一个表我有两个数据库“mem”和“location” 我想从mem表中添加主键id,并将其插入到位置表中的user_id列中。 我有一个sql查询在我的注册表单页面,自动递增'id'在mem表中,但似乎没有添加相同的值到位置表中的user_id, 有人能帮忙吗!
问题内容: 我有这段代码可以从“ jobseeker”表中选择所有字段,并可以通过将userType设置为“ admin”来更新“ user”表,其中userID =$ userID(此userID是我用户中的一个用户数据库)。然后,该语句应将这些值从“ jobseeker”表插入到“ admin”表中,然后从“ jobseeker表”中删除该用户。sql表很好,我的语句正在将userType更改
您好,我试图从另一个表中为我的表在最后一列中插入值,但出现错误错误: 列“name”中的空值违反了非空约束详细信息:失败的行包含(ddf1Caf0-26c2-49e1-8a73-64227eae1f50, null, null, null, null, null,2532)。
我需要一个MySQL函数,它可以在下面的SQL指令之后获取最后插入的id(不仅仅是最后一个)的列表: 更清楚地说,我想有这张桌子(我的桌子): 将在INSERT INTO语句之后复制新值,表现在显示如下: 此函数应返回以下列表:33,34,35 我认为一个临时解决方案是获取最后一个插入的id,然后根据复制的行数“手动”创建一个列表33、34、35。 但是我不知道是否存在SQL的本机函数!
问题内容: 这是场景: 我正在尝试在插入表时创建引用记录。但是我得到的是null,因为它是自动从序列中生成的。我也尝试了触发器插入,但是结果是一样的。有什么办法解决吗? 问题答案: 避免使用规则,因为它们会再次咬住您。 在每行运行的表a上使用after触发器。它看起来应该像这样(未经测试):