首页 > 解决方案 > 使用 node.js 将 base64 字符串插入博客 mysql

问题描述

我想在 mysql 博客中插入一个 base64 字符串。为此,我使用下面的代码,但是当我运行代码时出现以下错误:

ER_DATA_TOO_LONG:第 1 行的“Immagine”列的数据太长

Immagine 是 base64 图像(png 或 jpg)

Node.js 代码:

async function inserimentoTipologia(Nome, Immagine) {
    var ret = true;
    var imgCast = new Buffer.from(Immagine, "base64");
    checkValueLoad = await new Promise((resolve, reject) => {
        return db.con.query("Insert into Categoria(Nome,Immagine) values( ? , ? ); ", [Nome, imgCast], function(err, results) {
            if (err) {
                ManageError.SendError("Errore: nella funzione inserimentoTipologia " + err);
                ret = false;
            }
            resolve(true);
        });
    });
    return ret;
}

标签: mysqlnode.jsbase64blob

解决方案


    var ret = true;
    checkValueLoad = await new Promise((resolve, reject) => {
        return db.con.query("Insert into Categoria(Nome,Immagine) values( ? , ? ); ", [Nome, Buffer.from(Immagine).toString('base64')], function(err, results) {
            if (err) {
                ManageError.SendError("Errore: nella funzione inserimentoTipologia " + err);
                ret = false;
            }
            resolve(true);
        });
    });
    return ret;
}

推荐阅读