从Array到MySQL

时间:2015-06-30 02:02:01

标签: python mysql

不是最好的MySQL,但是我用python从网站上抓取数据,并将结果存储在mysql数据库中。我收集的所有数据都已放入我创建的自定义对象中(即每个对象都是具有相应品牌,型号,年份等的汽车)现在我遇到问题的是每个汽车有许多与之相关的图像,其范围可以从零到十个。我的问题是如何将这些图像存储在MySQL表中并将其连接到各自的汽车。

这是我为目前为每辆车创建的表格(python代码):

    command = ("""CREATE TABLE `%s`(
            `auctionHouse` varchar(255) NOT NULL,
            `auction` varchar(255) NOT NULL,
            `lot` varchar(255) NOT NULL,
            `year` int,
            `make` varchar(255) NOT NULL,
            `model` varchar(255),
            `description` text,
            `fullName` varchar(255) NOT NULL,
            `salePrice` varchar(255),
            `highPrice` int NOT NULL,
            PRIMARY KEY (`auction`,`lot`));
            """
           )%(auction)

我是否必须创建另一个用于保存图像的表格,然后在查询汽车时使用连接?

1 个答案:

答案 0 :(得分:1)

您不必创建另一个表,但我强烈建议您这样做。您指定每辆车的图像数量有限,因此您的汽车表中可能有10列。但是当你决定添加更多时会发生什么?

如果您计划将图像存储为Blob,那么绝对不能创建10列;继续创建另一张桌子。

如果您选择创建另一个表,我建议使用Innodb并指定外键约束。

我还建议您在创建汽车入口时使用交易,并将图像与该汽车相关联。

您需要将自己创建的汽车的ID用作图像表中的值,以便将图像与相应的汽车相关联。

http://www.w3schools.com/php/php_mysql_insert_lastid.asp

然后你可以使用Join来获取与汽车相关的所有图像,或者你可以自己查询图像表,如果你只需要图像并且你有汽车ID。