如何在Mysqlicous表中插入数据?

时间:2011-03-14 18:36:50

标签: mysql tags

我有点困难,需要帮助。

我已经在项目表中填充了数据, 我现在所处的地方就是这样:

我想将标签添加到现有网址。

如果我有网址和相应的标签,我该怎么办?

我不知道INSERT INTO是如何使用外键的。

有什么想法吗?

我有一个像这样的MySQL数据库(Mysqlicious Schema):

CREATE TABLE IF NOT EXISTS `item2tag` (
    `item_id` int(10) unsigned NOT NULL,
    `tag_id` int(10) unsigned NOT NULL,
    PRIMARY KEY (`item_id`,`tag_id`),
    KEY `tag_id` (`tag_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;

CREATE TABLE IF NOT EXISTS `items` ( 
    `vidid` int(10) unsigned NOT NULL AUTO_INCREMENT,
    `vidurl`   varchar(255) NOT NULL,  
    `vidimgdir` varchar(255) NOT NULL,
    `vidname`  varchar(64) NOT NULL,
    PRIMARY KEY (`vidid`),  
    UNIQUE KEY `vidurl` (`vidurl`) )
    ENGINE=InnoDB  DEFAULT CHARSET=latin1
    AUTO_INCREMENT=1782 ;

CREATE TABLE IF NOT EXISTS `tags` (
    `tag_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
    `tag_text` text NOT NULL,
    PRIMARY KEY (`tag_id`),
    UNIQUE KEY `tag_text` (`tag_text`(255)))
    ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

1 个答案:

答案 0 :(得分:0)

然后获取要为其添加标签的URL的id(vidid)。

现在,对于每个标记,检查它是否已存在于标记表中。如果没有,请将其添加到所述表中。然后执行以下操作:

INSERT INTO item2tag (item_id, tag_id) VALUES (x, y)

价值观应该说明一切。