在MySQL中插入URL

时间:2015-05-15 08:04:02

标签: php mysql

我目前正致力于iOS应用程序,它使用MySQL作为rdbms和xampp作为Web服务器在UITableView中填充视频。我在MySQL表中插入URL时遇到困难。为了更清楚,我在表中有3列,即NewID,NewsTitle和NewsVid。当我通过查询插入URL时,例如:

INSERT INTO `dbnews`.`Newsfeed` (`NewsID`, `NewsTitle`, `NewsVid`) VALUES ('1', 'Today's news', LOAD_FILE('Macintosh HD/Applications/XAMPP/xamppfiles/htdocs/video/Crime.mp4'))

错误提示"#1048 - 列' NewsVid'不能为空"

希望为我提供指导,以便在我学习的过程中解决这些问题。

1 个答案:

答案 0 :(得分:1)

首先 - 你的SQL命令中有未转义的char ' - 这里:'Today's news'

INSERT INTO `dbnews`.`Newsfeed` (`NewsID`, `NewsTitle`, `NewsVid`) VALUES ('1', 'Today's news', LOAD_FILE('Macintosh HD/Applications/XAMPP/xamppfiles/htdocs/video/Crime.mp4'))
                                                                                      ^ HERE

将您的SQL编辑为(您需要使用反斜杠'转义\):

INSERT INTO `dbnews`.`Newsfeed` (`NewsID`, `NewsTitle`, `NewsVid`) VALUES ('1', 'Today\'s news', LOAD_FILE('Macintosh HD/Applications/XAMPP/xamppfiles/htdocs/video/Crime.mp4'))

基于评论的更新:

然后您可以尝试仅存储数据库中的文件链接,而不输出LOAD_FILE函数。因此,您更新的命令将如下所示:

INSERT INTO `dbnews`.`Newsfeed` (`NewsID`, `NewsTitle`, `NewsVid`) VALUES ('1', 'Today\'s news', 'Macintosh HD/Applications/XAMPP/xamppfiles/htdocs/video/Crime.mp4')

当您从数据库中读取数据时,可以使用LOAD_FILE,如:

// DB CONNECT
// DB READ DATA
LOAD_FILE($row['NewsVid']);