使用PHP将SET元素插入mysql db表

时间:2014-06-29 15:37:46

标签: php mysql sql mysqli

我只想说我的mysql数据库中有一个名为Film的表。它有一个film_id,它是id列,special_features列是SET类型。从未使用过SET类型。 Special_features列属于类型集('预告片','评论','背后'),

我想在表格中输入这一行:

SET("trailers", "commentaires", "behind the scenes");

我的基本sql命令应该如何在php中看起来像?我正在使用MySQLi,我想要基本的sql字符串。

$sql = "INSERT INTO (special_features) VALUES (('trailers', 'commentaires', 'behind the scenes'))";

如果我只想插入预告片和评论,我的sql字符串会怎么样?

这只是一个例子,不确定它是否正确?

3 个答案:

答案 0 :(得分:0)

我想它会是这样的:

$sql = "INSERT INTO set_field(special_features) VALUES('trailers,commentaires')";

以下是所有Film表列的另一个示例:

INSERT INTO `film`(`title`, `description`, `release_year`, `language_id`, `original_language_id`, `rental_duration`, `rental_rate`, `length`, `replacement_cost`, `rating`, `special_features`) VALUES ('blade','cutting vampires','1998',1,1,0.4,4.99,120,60,0.8, ('Trailers,Commentaries,Deleted Scenes,Behind the Scenes'))

但是,您必须小心使用逗号分隔的值。它不应该是一个空格,并且所有值必须完全匹配(所有字符大写和小写),就像创建表时一样。

答案 1 :(得分:-1)

使用它将数据插入mysql $ sql =“INSERT INTO special_features(row1,row2,row3)VALUES('trailers','commentaires','幕后')”;

答案 2 :(得分:-1)

如果我没弄错,你想为数据库添加值,但是你需要插入相同数量的参数。 现在您的查询正在查找要存储在special_futures列中的1个参数,但是您传递了3个值。

这样的事情会更合适。

$sql = "INSERT INTO (trailers, commentaires, behindthescenes) VALUES ("$trailers",     "$commentaires", "$behind the scenes")";