files.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import connection from "./base.js";
  2. /*
  3. `file_id` VARCHAR(100) NOT NULL, -- file_id 长度为 100
  4. `md5` VARCHAR(32) NOT NULL, -- MD5 长度为 32
  5. `mimetype` VARCHAR(255) NOT NULL, -- mimetype 长度为 255
  6. `size` INT NOT NULL,
  7. `name` VARCHAR(255) DEFAULT NULL,
  8. `path` VARCHAR(255) DEFAULT NULL,
  9. */
  10. export async function files_insert({
  11. file_id = "",
  12. source_id = '',
  13. md5 = "",
  14. mimetype = "",
  15. size = "",
  16. name = "",
  17. path = "",
  18. }) {
  19. return new Promise(async (resolve, reject) => {
  20. try {
  21. const sql = `
  22. INSERT INTO files (file_id, source_id, md5, mimetype, size, name, path)
  23. VALUES (?, ?, ?, ?, ?, ?, ?)
  24. ON DUPLICATE KEY UPDATE file_id = file_id;
  25. `;
  26. const values = [file_id, source_id, md5, mimetype, size, name, path];
  27. // 直接接收 execute 返回的内容
  28. const result = await connection.execute(sql, values);
  29. return resolve(result);
  30. } catch (err) {
  31. console.log(34, err);
  32. return resolve(false);
  33. }
  34. });
  35. }
  36. // 查询图片信息
  37. export function getFileBymd5(md5Str) {
  38. return new Promise((resolve, reject) => {
  39. connection.query(`SELECT * FROM files WHERE md5 = ?`, [md5Str], (err, rows) => {
  40. if (err) {
  41. resolve(false); // 如果存在记录,则返回 true,否则返回 false
  42. } else {
  43. resolve(rows[0]); // 如果存在记录,则返回 true,否则返回 false
  44. }
  45. });
  46. });
  47. }