使用UUID生成列ID时如何插入table?
How to insert into a table when UUID is used to generate a column ID?
我创建了一个 table“中心”,CentreID
定义为 UUID:
CREATE TABLE `Centres` (
`CentreID` VARCHAR(36) NOT NULL UNIQUE,
`CentreName` VARCHAR(45),
`Address1` VARCHAR(45),
`Address2` VARCHAR(45),
`City` VARCHAR(45),
CONSTRAINT `PK_Centres` PRIMARY KEY (`CentreID`)
);
INSERT INTO Centres VALUES(UUID(), 'my centre', 'address1', NULL, 'London');
它创建了 CentreID
作为 ccdd2852-b9de-11ec-a791-f4ee08b2b85a
。
现在我想创建另一个 table“OpeningTime”,其中 CentreID
作为其列之一。
CREATE TABLE `OpeningTime` (
`OpeningTimeID` VARCHAR(36) NOT NULL UNIQUE,
`Centres_CentreID` VARCHAR(36)
);
插入数据时,我应该这样做吗:
INSERT INTO OpeningTime VALUES(UUID(), 'ccdd2852-b9de-11ec-a791-f4ee08b2b85a');
或者有没有更好的方法来插入没有长 VARCHAR 的 UUID?
或者是否有更好的方法来插入没有长 VARCHAR 的 UUID,另一种方法是插入..select..其中中心名称是已知且唯一的。
INSERT INTO OpeningTime
select UUID(), centres.centreid
from centres
where name = 'bromsgrove';
我创建了一个 table“中心”,CentreID
定义为 UUID:
CREATE TABLE `Centres` (
`CentreID` VARCHAR(36) NOT NULL UNIQUE,
`CentreName` VARCHAR(45),
`Address1` VARCHAR(45),
`Address2` VARCHAR(45),
`City` VARCHAR(45),
CONSTRAINT `PK_Centres` PRIMARY KEY (`CentreID`)
);
INSERT INTO Centres VALUES(UUID(), 'my centre', 'address1', NULL, 'London');
它创建了 CentreID
作为 ccdd2852-b9de-11ec-a791-f4ee08b2b85a
。
现在我想创建另一个 table“OpeningTime”,其中 CentreID
作为其列之一。
CREATE TABLE `OpeningTime` (
`OpeningTimeID` VARCHAR(36) NOT NULL UNIQUE,
`Centres_CentreID` VARCHAR(36)
);
插入数据时,我应该这样做吗:
INSERT INTO OpeningTime VALUES(UUID(), 'ccdd2852-b9de-11ec-a791-f4ee08b2b85a');
或者有没有更好的方法来插入没有长 VARCHAR 的 UUID?
或者是否有更好的方法来插入没有长 VARCHAR 的 UUID,另一种方法是插入..select..其中中心名称是已知且唯一的。
INSERT INTO OpeningTime
select UUID(), centres.centreid
from centres
where name = 'bromsgrove';