我正在寻找有关我正在构建的东西的建议:我有一个PHP应用程序,可以创建,更新和删除记录,但它紧密集成在一个传统的非基于SQL的数据库中,当你开始时它真的很慢做了很多数据库调用.

我想为用户提供更多的后台体验,这样当用户创建或编辑某些内容时,需要将所有变量,数组和对象写入MySQL数据库,然后开始后台脚本来阅读这些内容.记录并将请求处理到遗留数据库.

所以我需要一个跟踪任务的表,然后是另一个跟踪所有变量,对象,数组及其值的表.

以下是我认为第二个表的DB结构必须是:

>用于存储task_id的列

>如果var是数组或对象,则存储的列;如果是简单的var,则存储为NULL.

>用于存储数组/对象var的名称的列.

>如果它是一个对象的列,则存储它所对象的类型.

>用于存储阵列/对象组ID的列. (用于跟踪哪些变量属于对象/数组)

>用于在对象/数组中存储简单var,方法或名称的列

>用于存储var值的列

这里有几个例子:

1 | NULL | NULL | NULL | NULL | 'foo' | 'bar'

1 | 'array' | 'foo_array' | NULL | 1 | 'foo' | 'bar'

1 | 'array' | 'foo_array' | NULL | 1 | 'foo2' | 'bar2'

1 | 'object' | 'foo_obj' | foobar_object | 2 | 'foo_method' | 'bar'

1 | 'object' | 'foo_obj' | foobar_object | 2 | 'bar_method' | 'foo'

这看起来像是一个过于复杂的方法吗?我是疯了还是在想这个?有人能想出一个更好的方法吗?

谢谢.

解决方法:

它将生成一个特殊格式的字符串(您可以存储在您的数据库中).该字符串是特殊的,unserialize()可以将其转换回其原始的php值.它维护变量类型,值和结构.自定义对象和多维数组都没有问题.

你仍然需要你的数据库表的一部分,这只是为你做了很多工作,并且做得很好.

标签:php,mysql,database-design

来源: https://codeday.me/bug/20190626/1292772.html

php创建mysql计划任务_有关创建PHP-MySQL后台任务的建议相关推荐

  1. 计算机创建任务计划,win7系统创建任务计划的方法 如何创建任务计划

    win7系统可以创建任务计划来完成工作内容,提高工作效率,win7系统创建任务计划的方法相信很多用户都不知道如何使用.日常工作和生活中总有一些需要每天重复操作的工作要做,如文档整理,邮件备份,文件清理 ...

  2. 计算机定时关机计划任务失败,电脑无法创建任务计划怎么办|电脑中创建任务计划失败的解决方法...

    ‍ 如果我们要实现定时关机或者关机自动清理系统垃圾等功能,可以借助电脑系统中的任务计划程序来设置.首先就是要创建任务计划,刚开始的前几个步骤还可以正常完成,到最后一步就会弹出无法创建任务计划的提示.所 ...

  3. mysql架构组成_第 2 章 MySQL 架构组成

    麻雀虽小,五脏俱全.MySQL 虽然以简单著称,但其内部结构并不简单.本章从MySQL物理组成.逻辑组成,以及相关工具几个角度来介绍 MySQL 的整体架构组成,希望能够让读者对 MySQL 有一个更 ...

  4. mysql级联删除_近百道MySQL面试题和答案(2020收藏版)(完结篇)

    7. 什么是死锁?怎么解决? 死锁是指两个或多个事务在同一资源上相互占用,并请求锁定对方的资源,从而导致恶性循环的现象. 常见的解决死锁的方法 1.如果不同程序会并发存取多个表,尽量约定以相同的顺序访 ...

  5. mysql 的事件_一文总结MySQL数据库事件--定时任务实现方式

    由于最近在做某些日志表的清理工作,会用到定时任务,所以这里也简单介绍一下mysql如何用事件来实现定时任务. 后面会介绍两个日志表清理实现方案,一种是传统的定时delete,另一种会稍微复杂点,主要是 ...

  6. mysql query 优化_第 8 章 MySQL 数据库 Query 的优化

    前言: 在之前"影响 MySQL 应用系统性能的相关因素"一章中我们就已经分析过了Query语句对数据库性能的影响非常大,所以本章将专门针对 MySQL 的 Query 语句的优化 ...

  7. linux mysql内网_在Linux中mysql的一些基本操作

    在Linux中mysql的一些基本操作 下面介绍一下 一.关于在Linux中mysql的一些基本操作 1.进入mysql "mysql -uroot -p",会提示输入密码,输入密 ...

  8. 二进制的mysql怎么装_使用二进制演示MySQL安装步骤

    使用二进制演示MySQL安装步骤 发布时间:2020-06-08 11:36:24 来源:51CTO 阅读:194 作者:三月 不知道大家之前对类似使用二进制演示MySQL安装步骤的文章有无了解,今天 ...

  9. centos mysql卸载重装_提高性能,MySQL 读写分离环境搭建

    MySQL 读写分离在互联网项目中应该算是一个非常常见的需求了.受困于 Linux 和 MySQL 版本问题,很多人经常会搭建失败,今天松哥就给大伙举一个成功的例子,后面有时间再和大家分享下使用 Do ...

最新文章

  1. 精心安利8个良心好用的学习神器和办公神器
  2. Win7 命令行下C语言学习环境搭建(三)
  3. Android 本地搭建Tomcat服务器供真机测试
  4. 《软件工程课程总结》
  5. 一步一步SharePoint 2007之二十一:解决实现注册用户后,自动具备访问网站的权限的问题(3)——创建用户...
  6. ReentrantLock可重入锁
  7. idea原生ajax数据处理(增删改查)
  8. CentOS hping3安装
  9. SSM小区停车场管理系统
  10. BP神经网络算法及Matlab实现
  11. 转载关于后端开发需要学习的内容
  12. vscode报错Failed to save ***,The content of the file is newer.
  13. 美的空气净化器H32评测:美观、实用以及更多
  14. 微软Azure 虚拟机支持多种 Linux 发行版!
  15. 搭配Online:瑞幸昔日“盟友”神州优车,与北汽集团达成战略合作
  16. 文本处理命令 cat more less cut wc sort uniq
  17. 微信公众号中的支付宝支付与微信支付 支付宝支付问题(微信bug)
  18. 兄弟俩畅游Tomcat城市的SpringMVC科技园区(文末有惊喜)
  19. 华为软件测试笔试真题,抓紧收藏不然就看不到了
  20. Lasso Regression

热门文章

  1. 江翰服务器保护系统(JH-Data Backup server)
  2. 2008年4月10日:超负荷的一天
  3. Dora.Interception: 一个为.NET Core度身定制的AOP框架
  4. VS2010 代码前出现虚线的问题
  5. 运行tensorflow代码出现dtypes.py:516: FutureWarning: Passing (type, 1) or '1type的解决方法(亲测)
  6. 解决python调用TensorFlow时出现FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecate
  7. 使用git建立远程仓库,让别人git clone下来
  8. php学习之try catch
  9. SVN使用log,list,cat,diff命令查看特定文件版本信息
  10. PHP构建数据结构填充数据