2017-02-19 82 views
0

我的意圖是每天自動將blob數據上傳到MySQL/MariaDB表字段。我想爲此使用SQL預定事件。但我無法理清SQL查詢。原來的文件是在網上,但即使是我的本地機器,我找不到查詢...使用SQL將blob上傳到MySQL

當我在phpMyAdmin中使用「添加事件」,我可以瀏覽我的本地機器上的文件。這是我得到自動生成的代碼:

INSERT INTO `items` (`id`, `data`) 
VALUES (NULL, 0x5b7b0d0a202020202276616c31223a2031312c0d0a202020202276616c32223a2031322c0d0a202020202276616c33223a2031330d0a7d2c207b0d0a202020202276616c31223a2032312c0d0a202020202276616c32223a2032322c0d0a202020202276616c33223a2032330d0a7d2c207b0d0a202020202276616c31223a2033312c0d0a202020202276616c32223a2033322c0d0a202020202276616c33223a2033330d0a7d5d); 

它不象...VALUES (NULL, "C:\data.json");所以我有點無言以對。任何指導/例子,非常感謝。

回答

1

出於安全原因,MySQL的/ MariaDB的沒有任何辦法把觸角伸到了盤等你將不得不在其他語言(PHP/Java的/ ...)來編寫代碼以打開該文件,然後執行INSERT

那六角看起來像普通的文本("val1": 11, utf8:19:19'...),是有一些原因,使用十六進制?實際上,它看起來像JSON;這是相關的嗎?

UNHEX()功能見。參見各種JSON函數。等

+0

第2句解釋它。謝謝。那個文件是我自己定製的,是的,它是json。當它自動生成查詢時,十六進制來自數據庫。並感謝參考文獻,但爲了使用JSON功能,我首先必須在文件中我的數據庫:) – ZygD

+0

然後你_probably_需要:'INSERT ... VALUES(...,UNHEX(「5b7b0d0a202020202276616c31223a20」))'。請注意,「0x」已被刪除。 –