gpt4 book ai didi

PHP 和 MYSQL : Inserting Foreign Key

转载 作者:行者123 更新时间:2023-11-29 04:25:29 26 4
gpt4 key购买 nike

我有两个表,IMAGES 和 CATEGORIES。

CATEGORIES 到 IMAGES 是 1:M 的关系(许多图像可以有 1 个类别)。

我想将图像从文件系统插入到数据库中,并在插入过程中动态分配外键类别。

我想通过单个插入来实现此目的,但似乎我需要为每个类别的图像插入一个,如下所示:

 $allimages = scandir('./images/all_images/');
$category1= scandir('./images/category1/');
$category2= scandir('./images/category2/');

//CATEGORY 1:
for($x=0; $x<count($category1); $x++)
{
if(!is_dir(IMAGES_PATH . $category1[$x]))
{
INSERT INTO images (imgid, imgname, categoryfk) VALUES ('$x', '$category1', 1)

//CATEGORY 2:
for($x=0; $x<count($category2); $x++)
{
if(!is_dir(IMAGES_PATH . $category2[$x]))
{
INSERT INTO images (imgid, imgname, categoryfk) VALUES ('$x', '$category2', 2)

//CATEGORY 3:
for($x=0; $x<count($allimages); $x++)
{
if(!is_dir(IMAGES_PATH . $allimages[$x]))
{
INSERT INTO images (imgid, imgname, categoryfk) VALUES ('$x', '$allimages', 3)

这真的是我能做到的唯一方法吗?我可以在单个插入和循环中实现此类别分配吗?

谢谢!

最佳答案

此外,您还可以通过插入查找结果来动态查找外键,例如查找“类别 1”的外键,然后插入引用该类别的新图像:

INSERT INTO Images(imgId, imgname, categoryFk)
SELECT 9876, 'photo1.jpg', cat.categoryId
FROM Category cat
WHERE cat.categoryName = 'Category 1';

SQLFiddle here

关于PHP 和 MYSQL : Inserting Foreign Key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12585614/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com