试图在存储过程中自动生成列

问题描述 投票:-2回答:1

我被要求在我已完成的任务中使存储过程更加“自动”。它要求我自动填充信息,而不要为我的数据库的账单(“图片”)表格输入参数。它写在任务中,可以自动执行名称和描述。例如昵称:bilder / andanders.jpg说明:bilde av Anders Andersen这是我的代码。关于如何解决此问题的任何想法?

DELIMITER $$
DROP PROCEDURE IF EXISTS Testproc1$$

create procedure testproc1(bildenr INT (11), filnavn VARCHAR (40), beskrivelse VARCHAR(40),
brukernavn VARCHAR(40), fornavn VARCHAR(40), etternavn VARCHAR(40), klassekode INT(10))

begin
    insert into bilde 
    values (bildenr, filnavn, beskrivelse);

    insert into student 
    values (brukernavn, fornavn, etternavn, klassekode, bildenr);

end$$

mysql stored-procedures
1个回答
0
投票

您应将帐单设为bildenrAUTO_INCREMENT PRIMARY KEY。然后,您可以执行以下操作:

    insert into bilde 
    values (NULL, filnavn, beskrivelse);

    insert into student 
    values (brukernavn, fornavn, etternavn, klassekode, LAST_INSERT_ID());

NULL分配给自动增量列会自动用下一个值填充它。 LAST_INSERT_ID()获取分配给最后一个自动增量列的值。

© www.soinside.com 2019 - 2024. All rights reserved.