node文件上传给mysql
时间: 2023-10-16 16:25:04 浏览: 43
Node.js可以使用MySQL模块将文件上传到MySQL数据库中。以下是一个简单的例子:
1. 安装mysql模块
```
npm install mysql
```
2. 引入mysql模块并连接到数据库
```
const mysql = require('mysql');
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'password',
database: 'test'
});
connection.connect();
```
3. 创建一个表用于存储文件
```
const createTable = `CREATE TABLE IF NOT EXISTS files (
id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
type VARCHAR(255) NOT NULL,
data LONGBLOB NOT NULL
)`;
connection.query(createTable, function (err, result) {
if (err) throw err;
console.log('Table created or already exists');
});
```
4. 使用Node.js的fs模块读取文件并将其上传到数据库
```
const fs = require('fs');
const fileName = 'example.pdf';
const fileType = 'pdf';
const filePath = 'path/to/file/' + fileName;
fs.readFile(filePath, function (err, data) {
if (err) throw err;
const insertFile = 'INSERT INTO files (name, type, data) VALUES (?, ?, ?)';
const values = [fileName, fileType, data];
connection.query(insertFile, values, function (err, result) {
if (err) throw err;
console.log('File uploaded successfully');
});
});
```
这是一个基本的例子,实际上可能需要更多的逻辑来处理文件上传。