将文件保存为 MYSQL 数据库中的 blob 或文件路径

2024-05-03

我知道这些问题是常见问题之一,但我需要您针对具体案例提供帮助。

我正在开发一个应用程序,其中一些用户可以添加订单,一些用户可以执行这些订单。这些订单非常具体,因此只有有限数量的用户可以添加它们。

然后,为每个订单生成三个文档。每个文档的大小不超过1MB,所以我打算将它们作为blob保存在我的数据库中,但我不知道将来会发生什么,文档的大小可能会显着增加(例如:5MB) )。我应该怎么办?为什么?将它们保存为 blob 或将它们保存为文件路径。

例如:在数据库中继续将 5MB 文件保存为 blob 是一个好习惯,还是从一开始就将它们保存为文件路径更好(如果我知道这可能会发生) ),或者将它们保存为斑​​点,如果它们增加则更改它。

对于这个项目我正在使用digitalocean服务器。


MySQL 可以处理 5MB 的 blob。如果你使用MEDIUMBLOB它最多可以处理 16MB,如果您使用LONGBLOB它可以处理高达 4GB 的数据。读字符串类型概述 https://dev.mysql.com/doc/refman/8.0/en/string-type-overview.html了解详情。

除此之外,将 BLOB 数据放入数据库也有同样的优点和缺点。

  • 当然,大量 BLOB 数据会使数据库变得更大。
  • 将所有数据保存在一起意味着单个数据库备份包含所有数据,包括“附件”。
  • 将BLOB放入数据库意味着BLOB数据支持事务隔离、回滚、SQL权限等。如果您DELETE某些行,它也会删除这些行上的BLOB,但外部文件不会自动删除。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将文件保存为 MYSQL 数据库中的 blob 或文件路径 的相关文章

  • 如何在查询语句之外从mysql查询中获取值?

    这是下面的函数console log function quo value value connection query SELECT role from roles where id 1 function error results fi
  • 连接到 OpenShift (Redhat Paas) mysql 实例

    我正在尝试将我的 C 应用程序与 openshift 数据库连接 但我得到了这个例外conn Open Eccezione gt MySql Data MySqlClient MySqlException 0x80004005 Unable
  • ORA-12728: 正则表达式中的范围无效

    我想检查表中是否插入了有效的电话号码 所以我的触发代码在这里 select start index into mob index from gmarg mobile operators where START INDEX substr ne
  • NHibernate - 无法执行查询 - 输入字符串的格式不正确

    我已经为此摸不着头脑有一段时间了 我不知道出了什么问题 概述 我的 MySQL 数据库中有两个表 两者都正确映射到数据库 我可以加载数据 并且我能够查询一个表 但不能查询另一个表 我研究过的解决方案 表和 C 代码之间的类型转换问题 映射问
  • 解析错误:语法错误,意外的 T_RETURN [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 遇到这个问
  • 如何删除 MySQL 数据库?

    你可能从我的上一个问题中注意到一个问题引发了更多的问题 在 MySQL 监视器中阅读 MySQL 手册 https stackoverflow com questions 1081399 我的数据库现在无法使用 部分原因是我想破坏东西并且无
  • Linux内核container_of宏和C90中的通用容器

    是否有可能实施容器的 http lxr linux no linux tools perf util include linux kernel h L18纯C90中的宏 我不确定如何做到这一点 因为内核实现取决于海湾合作委员会黑客 http
  • MySQL - 从数字列表中选择在表的 id 字段中没有对应项的数字

    我有一个数字列表 例如 2 4 5 6 7 我有一个表 foos 带有 foos ID 包括 1 2 3 4 8 9 我想获取我的号码列表 并在我的表的 ID 字段中找到那些没有对应项的号码 实现此目的的一种方法是创建一个表格栏 在 ID
  • ALTER TABLE 语句与 FOREIGN KEY 约束冲突

    为什么要添加外键tblDomare表导致此错误 ALTER TABLE 语句与 FOREIGN KEY 约束 FK tblDomare PersN 5F7E2DAC 冲突 冲突发生在数据库 almu0004 表 dbo tblBana 列
  • 显示和随机化 php 数组

    我有一个显示结果的数组 如下所示 Array 0 gt 71 1 gt 56 2 gt 64 3 gt 82 4 gt 90 5 gt 80 6 gt 65 7 gt 62 8 gt 14 9 gt 3 我的代码是 while row my
  • Mysql带限制的删除语句

    我试图从表中删除行 但出现错误 DELETE FROM chat messages ORDER BY timestamp DESC LIMIT 20 50 我在 50 时收到此错误 您的 SQL 语法有错误 检查与您的 MySQL 服务器版
  • MySql 视图脚本中的注释

    可以这样做吗 我尝试过多个 gui mysql workbench navicat toad for mysql 但没有一个保存这样的注释 something important select something else importan
  • MySQL:如何仅获取正值的平均值?

    假设我有 INT 列 并且我使用 1 来表示插入时没有可用数据 我想获得该列中所有 0 或更大值的平均值 这可能吗 Thanks 我忘了提及 我正在与其他 AVG 一起执行此操作 因此从选项卡中选择 avg a avg b avg d 所以
  • SQL Server 中离线索引重建和在线索引重建有什么区别?

    重建索引时 有一个选项ONLINE OFF and ONLINE ON 我知道当ONLINE模式打开时 它会复制索引 切换新查询以利用它 然后重建原始索引 使用版本控制跟踪两者的更改 如果我错了 请纠正我 但是 SQL 在离线模式下会做什么
  • 如何从任何网站下载视频

    我只是想知道如何从任何网站下载视频的总体思路 我尝试的事情 我检查页面 在视频属性标记中看到 blob URL 将 blob URL 复制粘贴到浏览器中 但无法打开 I also look around the Developer tool
  • Tomcat 6找不到mysql驱动

    这里有一个类似的问题 但关于类路径 ClassNotFoundException com mysql jdbc Driver https stackoverflow com questions 1585811 classnotfoundex
  • 使用用户定义函数 MySql 时出错

    您好 请帮我解决这个问题 提前致谢 我在数据库中定义了这些函数 CREATE FUNCTION levenshtein s1 VARCHAR 255 s2 VARCHAR 255 RETURNS INT DETERMINISTIC BEGI
  • 无法连接到 MAMP 上的 phpMyAdmin

    我收到此错误消息 MySQL 说道 无法连接 设置无效 phpMyAdmin 尝试连接 MySQL 服务器 但服务器拒绝连接 您应该检查配置中的主机 用户名和密码 并确保它们与 MySQL 服务器管理员提供的信息相对应 用户和通行证是默认的
  • 如何修复 pgbackups 错误:备份 url 无效?

    我正在尝试按照迁移到 Cedar 的说明进行操作 除了我进行了重大重写 因此这不是前一个应用程序的分支 而是一个单独的分支 并停留在数据库迁移步骤 我安装了 pgbackup 和 heroku postgresql 插件 但得到了这个结果
  • 总和和不同不会改变结果?

    我是一个新手 试图在这里解决这个问题 到目前为止还没有运气 非常感谢任何帮助 Select Distinct AB agency no ab branch no AS AGENCY BRANCH count AB agency no ab

随机推荐

  • 主干关系有许多最佳实践

    我是 Backbone 关系新手 我不确定使用 HasMany 的正确方法是什么 我有一个Parent模型有很多children 许多 是指成千上万的孩子 为了避免性能问题 我通过外键查询子项 child parent 1 而不是创建一个巨
  • 我可以从 LDAP 更改自己的 Active Directory 密码(无需管理帐户)

    我没有 也不会 拥有管理员帐户 我想从 java 更改 Active Directory 中自己 用户 的密码 我怎样才能做到这一点 使用来自网络的代码 private void changePass throws Exception St
  • 如何使用PDFBOX确定文本的人工粗体样式、人工斜体样式和人工轮廓样式

    我正在使用 PDFBox 来验证 pdf 文档 检查 PDF 中存在的以下类型的文本有一定要求 人工粗体样式文本 人造斜体样式文本 人工轮廓样式文本 我在 PDFBOX api 列表中进行了搜索 但找不到此类 api 任何人都可以帮助我并告
  • R 中的网页抓取表

    完全菜鸟试图抓取此页面上的表格 我所能做的最远的是加载 rvest 包 我的问题是 我找不到合适的元素 我通过检查器尝试的元素是 table w782 comm lsjz 但它返回长度为0的列表 并在 html table 之后执行 gt
  • 下载位置 Selenium-webdriver Cucumber Chrome

    我正在使用 Cucumber 和 Ruby 当通过 Selenium Webdriver 在 Chrome 中运行测试时 我想将下载位置更改为测试文件夹而不是用户下载文件夹 我当前的 chrome 驱动程序设置如下 Capybara def
  • Kamada 和 Kawai 图形布局算法? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 有人尝试过 Kamada Kawai 的 88 算法来绘制一般无向图吗 如果是这样 并且您知道其中的任
  • 设置 put 的行尾字符

    我有一系列想要打印的条目 Being arr数组 我只是用来写 puts arr 然后我需要使用DOS格式的行尾 r n 所以我写道 arr each e print e r n 这工作正常 但我想知道是否有一种方法可以指定要使用的行尾格式
  • Android Google Maps V2 当前位置纬度经度 NullPointerException

    有很多类似的问题 但我没有找到解决我的问题的方法 setUpMap方法是 private void setUpMap BitmapDescriptor iconm BitmapDescriptorFactory fromResource R
  • 如何消除按钮和其他视图之间的额外间隙?

    当我创建按钮视图时 Android 总是在该按钮与其下方的其他视图之间创建一些额外的空间 在下面的示例中 第二个按钮上方有一个按钮 您可以看到这两个按钮之间的间隙 我怎样才能摆脱这个差距 谢谢
  • eclipse中终止调试/运行的快捷方式是什么?

    What is the shortcut in eclipse to terminate debugging running Looking under Preferences gt Keys says Ctrl F2 but it doe
  • PHP 命名空间 - 提升一个级别?

    示例1 命名空间 Inori Test 主测试类 示例2 命名空间 Inori Test SubTest SubTest 类扩展了 问题 有没有办法快速提升命名空间的级别 以便 SubTest 可以扩展 MainTest 就像是 MainT
  • 如果 netezza 中存在则删除

    我需要一个命令来删除表 如果存在 NETEZZA 类似这样的东西 drop table if exists xxx 我已经搜索并尝试了很多但没有成功 你能帮我一下吗 In netezza你可以使用这个语法 drop table table
  • iOS 所需的设备功能自动对焦相机

    我有一个 iOS 应用程序 我在其中设置Required Device Capabilities配置设置需要两者still camera and auto focus camera因为它需要在具有更好的自动对焦相机传感器的新一代设备上运行
  • Material-UI 中 IconButton 的悬停效果

    图标按钮悬停 https i stack imgur com lsYHX png 这是我正在使用的 Material UI 中的 iconButton 正如您所看到的 当您将鼠标悬停在图标上时 图标周围有一个轻微的灰色边框 禁用此功能的属性
  • 如何为单个函数设置 ICC 属性“fp-model precision”,以防止关联优化?

    我正在实施卡汉求和 http en wikipedia org wiki Kahan summation algorithm 在支持 gcc47 gcc48 clang33 icc13 和 icc14 编译的项目中 作为该算法的一部分 我想
  • Kubernetes Pod 已终止 - 退出代码 137

    我需要一些关于 k8s 1 14 和在其上运行 gitlab 管道所面临的问题的建议 许多作业都会抛出退出代码 137 错误 我发现这意味着容器突然终止 集群信息 库伯内特版本 1 14 使用的云 AWS EKS 节点 C5 4xLarge
  • 用于获取有关 SVN 存储库信息的 Python 库?

    我正在寻找一个可以从 SVN 存储库中提取 至少 以下信息的库 not工作副本 修订号及其作者和提交消息 每个修订版中的更改 添加 删除 修改文件 有Python库可以做到这一点吗 对于作者和提交消息 我可以解析 db revprops 0
  • 如何将上传的STEP文件转换为其他格式?

    如何将上传的 STEP 文件转换为其他 CAD 格式 最好使用 PHP 我将一个小型 STEP 文件上传到 3dContentCentral 并立即看到新上传的 STEP 文件的 20 种不同文件类型格式 示例网址 希望你们中的一些人能给我
  • 创建横幅交换算法来轮播广告

    我正在构建广告横幅轮播脚本基于印象整个月均匀地显示广告 每次请求显示广告时都会进行计算 所以这将是即时完成的 广告应显示为一个接一个轮流播放 而不是仅显示一个广告 1000 次展示 然后显示另一个广告 1000 次展示 大多数情况下 它应该
  • 将文件保存为 MYSQL 数据库中的 blob 或文件路径

    我知道这些问题是常见问题之一 但我需要您针对具体案例提供帮助 我正在开发一个应用程序 其中一些用户可以添加订单 一些用户可以执行这些订单 这些订单非常具体 因此只有有限数量的用户可以添加它们 然后 为每个订单生成三个文档 每个文档的大小不超