目录
回复讨论(解决方案)
首页 后端开发 php教程 mysql中的表前缀应该丢进历史的垃圾堆。

mysql中的表前缀应该丢进历史的垃圾堆。

Jun 23, 2016 pm 01:49 PM
mysql 前缀 历史

1、表前缀广泛使用,却毫无用处。在服务器几乎都快是不要钱的了,数据完全就是免费的。一个数据库中容纳2个数据库中有意义么?
2、给编程和维护,数据库维护带来极*烦。犹如马克思主义,毛XX思想一样。只有害处,毫无好处。

谁能给我一个必须用前缀的理由??

答案就不用大家给我了,我自己给。在99.99%的情况不需要。反正我是重来没有用到过。

我想调查一下,谁的项目中一定需要表前缀的?能介绍下么?天下海选,看是否真有人需要表前缀?

跟贴有分。


回复讨论(解决方案)

如果你的数据库支持多个多个数据库,那就没什么意义,如果只有一个,对于区分表,还是有帮助的。

购买空间的,只能创建一个数据库。加前缀就很有用了,楼主不能忽略这些用户。

购买空间的,只能创建一个数据库。加前缀就很有用了,楼主不能忽略这些用户。


正规100元一个空间,就带免费数据库,有必要一个数据库时塞2个数据库么?
多买一个空间啊。真正运行的程序,100元一年都出不起么?
本地开发当然是要多少个数据库就多少个数据库。

我见过和用过的项目至少20+以上吧。从来没有需要前缀的时候,但居然个个项目都有前缀。

防止某些不怀好意的高水平用户猜测?
开源CMS难免会有些漏洞吧,多个表前缀也许多一层防护?
用来实现某种功能?比如中文版/英文版?

楼主好像自己也开着有公司吧?
多买一个空间啊。真正运行的程序,100元一年都出不起么?这样的话你也能对你的客户说出来?
我就是要把一个 dede,一个 Discuz! 、一个 wordpress 放在一个空间里,以后还想加个 wiki 和问答系统。
难道您销售的系统不支持这样做吗?那么我何必花钱买你的系统,而不去用免费的开源系统呢?

很多设定本来都是不合理的。但按照有关部门的意思就是历史遗留原因。


比如计算机语言,五花八门。其实如果语言真的好,一种就足够了。

比如系统对图片、动画的支持差,则是因为当时开始做计算机的时候,工程师只考虑文字。只需要屏幕出现一些文字就行了。虽然后来图片算法出现了,动画算法出现了。但这些后来出现的,都是在原本不支持他们的硬软件环境下诞生的,于是文件变得很大,很难使用。

想要改变这些缺陷,必须全面重构底层,重新架构系统。但这些是不可能的了。所以将就着用吧。


mysql这个,其实和什么几个数据库没有关系。你也可以做表后缀,也可以做表中缀。只是一个命名规则而已,尊不遵守都行。


购买空间的,只能创建一个数据库。加前缀就很有用了,楼主不能忽略这些用户。


正规100元一个空间,就带免费数据库,有必要一个数据库时塞2个数据库么?
多买一个空间啊。真正运行的程序,100元一年都出不起么?
本地开发当然是要多少个数据库就多少个数据库。

但一?空?已??用,?何要因?根?模?分???而?多一?空?呢?100元也是?啊,大哥。

楼主好像自己也开着有公司吧?
多买一个空间啊。真正运行的程序,100元一年都出不起么?这样的话你也能对你的客户说出来?
我就是要把一个 dede,一个 Discuz! 、一个 wordpress 放在一个空间里,以后还想加个 wiki 和问答系统。
难道您销售的系统不支持这样做吗?那么我何必花钱买你的系统,而不去用免费的开源系统呢?


节省的这100元,代码维护多花费的精力成本何止1000元以上?

我运营网站的目的并不是为了学习如何搭建一个网站
所以我不可能为了你的维护方便而掏钱买上多个空间,其实如果我有多个空间,那么你维护起来不也是很麻烦吗?
再说各个系统都是独立运行,互不干涉,何来的“多花费的精力”

我运营网站的目的并不是为了学习如何搭建一个网站
所以我不可能为了你的维护方便而掏钱买上多个空间,其实如果我有多个空间,那么你维护起来不也是很麻烦吗?
再说各个系统都是独立运行,互不干涉,何来的“多花费的精力”


表前缀会给编程带来麻烦,给代码维护多带来的精力何止1万元以上成本。
不用前缀,平均一个项目至少节省1万以上开发和维护成本。

我想知道你所说的麻烦、难维护到底体现在哪块呢?
而且如果都如 多买一个空间啊。真正运行的程序,100元一年都出不起么?  ,那么一个库需要多种前缀,就需要再多买几个空间么?
难道前缀仅仅是为了摆设?

我加前缀是为了一眼就能区分这些表是属于哪个功能模块,那我查找表的时候范围也就更小了,找到的时间也就更加少了,难道胡乱放一堆,一个一个找?当然,不同场景需要的程度也不一致,你用不到并不能说明没用。

就算不用前缀,多放几个库,来回切库维护成本就低了?

表前缀不会给编程带来麻烦,尤其是封装好的数据层更是小菜一碟
表前缀会是运行速度略微下降,因为需要有一次表名的组装
表前缀可以使程序通用化程度加强,不同应用间不再需要为防止表名相同而大伤脑筋
表前缀可以在程序开发期间轻松的更换测试数据
也可在维护时不影响系统的正常运行,只需单独指派一个 config 就切换到模拟数据上了
而不用表前缀时,你可能需要备份数据库,并提防测试数据暴露到网站上

当然,表前缀只是为工作方便而使用的一个技术手段而已。用不用是你自己的事情

既然你有 Java 经历,那么你也应该知道 Java 从 C++ 脱离出来的时候放弃了 C/C++ 的外部文件包含(#include)。以为只要规划好类,就不再需要引入外部文件了。但事情总是那么的不如意,第二年也只有再造一个 Import 来弥补了

表前缀不会给编程带来麻烦,尤其是封装好的数据层更是小菜一碟
表前缀会是运行速度略微下降,因为需要有一次表名的组装
表前缀可以使程序通用化程度加强,不同应用间不再需要为防止表名相同而大伤脑筋
表前缀可以在程序开发期间轻松的更换测试数据
也可在维护时不影响系统的正常运行,只需单独指派一个 config 就切换到模拟数据上了
而不用表前缀时,你可能需要备份数据库,并提防测试数据暴露到网站上

当然,表前缀只是为工作方便而使用的一个技术手段而已。用不用是你自己的事情

既然你有 Java 经历,那么你也应该知道 Java 从 C++ 脱离出来的时候放弃了 C/C++ 的外部文件包含(#include)。以为只要规划好类,就不再需要引入外部文件了。但事情总是那么的不如意,第二年也只有再造一个 Import 来弥补了



php几乎完全做到了不用手工引用外部文件。

我想知道你所说的麻烦、难维护到底体现在哪块呢?
而且如果都如 多买一个空间啊。真正运行的程序,100元一年都出不起么?  ,那么一个库需要多种前缀,就需要再多买几个空间么?
难道前缀仅仅是为了摆设?

我加前缀是为了一眼就能区分这些表是属于哪个功能模块,那我查找表的时候范围也就更小了,找到的时间也就更加少了,难道胡乱放一堆,一个一个找?当然,不同场景需要的程度也不一致,你用不到并不能说明没用。

就算不用前缀,多放几个库,来回切库维护成本就低了?


我认为前缀不好的原因,就在于快速找表。
前缀影响我阅读表名。
开始看前缀时,我以为前缀有何意义。最后发现,屁意义都没有。就是前缀而已。

能不能引入外部文件和要不要引入外部文件,是两个不同的范畴

前缀的存在就在于款速找表,相同前缀的肯定隶属于相同的应用
你可把前缀理解为分组(分类)标志

存在即意义。
前缀的存在就是为了快速区分不同表之间的意义。当然,如果没必要区分,也完全没必要用前缀了。
也许你觉得屁意义没有,给你工作带来无限的麻烦,成本大大提高了,完全可以摒弃。但熟不知,表前缀也许给其他人工作上带了许多便利。
在一个大型应用中,也许有许多相互关联、高耦合的关系表,但不隶属同一模块,也许前缀的意义就体现出来了。否则多库操作,难道表的关系也要升级到库的关系?反而不美~

还是那句话,存在即意义。

经过几个月思考和争论:结论如下。
1、楼上17楼是正解。xuyanlu
2、16楼回答不错。
 3、6楼你的回复在20年前也许正确。现在完全错误。

前缀做为分组用有存在的必要,但整个表都是前缀,完全就是病态。
在此完全木有考虑在互联网上整天做练习的xuzun这样的人。因为这样的整个中国找不到3个人吧?所以忽略。

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
威尔R.E.P.O.有交叉游戏吗?
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

mysql:简单的概念,用于轻松学习 mysql:简单的概念,用于轻松学习 Apr 10, 2025 am 09:29 AM

MySQL是一个开源的关系型数据库管理系统。1)创建数据库和表:使用CREATEDATABASE和CREATETABLE命令。2)基本操作:INSERT、UPDATE、DELETE和SELECT。3)高级操作:JOIN、子查询和事务处理。4)调试技巧:检查语法、数据类型和权限。5)优化建议:使用索引、避免SELECT*和使用事务。

phpmyadmin怎么打开 phpmyadmin怎么打开 Apr 10, 2025 pm 10:51 PM

可以通过以下步骤打开 phpMyAdmin:1. 登录网站控制面板;2. 找到并点击 phpMyAdmin 图标;3. 输入 MySQL 凭据;4. 点击 "登录"。

MySQL:世界上最受欢迎的数据库的简介 MySQL:世界上最受欢迎的数据库的简介 Apr 12, 2025 am 12:18 AM

MySQL是一种开源的关系型数据库管理系统,主要用于快速、可靠地存储和检索数据。其工作原理包括客户端请求、查询解析、执行查询和返回结果。使用示例包括创建表、插入和查询数据,以及高级功能如JOIN操作。常见错误涉及SQL语法、数据类型和权限问题,优化建议包括使用索引、优化查询和分表分区。

为什么要使用mysql?利益和优势 为什么要使用mysql?利益和优势 Apr 12, 2025 am 12:17 AM

选择MySQL的原因是其性能、可靠性、易用性和社区支持。1.MySQL提供高效的数据存储和检索功能,支持多种数据类型和高级查询操作。2.采用客户端-服务器架构和多种存储引擎,支持事务和查询优化。3.易于使用,支持多种操作系统和编程语言。4.拥有强大的社区支持,提供丰富的资源和解决方案。

redis怎么使用单线程 redis怎么使用单线程 Apr 10, 2025 pm 07:12 PM

Redis 使用单线程架构,以提供高性能、简单性和一致性。它利用 I/O 多路复用、事件循环、非阻塞 I/O 和共享内存来提高并发性,但同时存在并发性受限、单点故障和不适合写密集型工作负载的局限性。

MySQL和SQL:开发人员的基本技能 MySQL和SQL:开发人员的基本技能 Apr 10, 2025 am 09:30 AM

MySQL和SQL是开发者必备技能。1.MySQL是开源的关系型数据库管理系统,SQL是用于管理和操作数据库的标准语言。2.MySQL通过高效的数据存储和检索功能支持多种存储引擎,SQL通过简单语句完成复杂数据操作。3.使用示例包括基本查询和高级查询,如按条件过滤和排序。4.常见错误包括语法错误和性能问题,可通过检查SQL语句和使用EXPLAIN命令优化。5.性能优化技巧包括使用索引、避免全表扫描、优化JOIN操作和提升代码可读性。

MySQL的位置:数据库和编程 MySQL的位置:数据库和编程 Apr 13, 2025 am 12:18 AM

MySQL在数据库和编程中的地位非常重要,它是一个开源的关系型数据库管理系统,广泛应用于各种应用场景。1)MySQL提供高效的数据存储、组织和检索功能,支持Web、移动和企业级系统。2)它使用客户端-服务器架构,支持多种存储引擎和索引优化。3)基本用法包括创建表和插入数据,高级用法涉及多表JOIN和复杂查询。4)常见问题如SQL语法错误和性能问题可以通过EXPLAIN命令和慢查询日志调试。5)性能优化方法包括合理使用索引、优化查询和使用缓存,最佳实践包括使用事务和PreparedStatemen

怎样建立sql数据库 怎样建立sql数据库 Apr 09, 2025 pm 04:24 PM

构建 SQL 数据库涉及 10 个步骤:选择 DBMS;安装 DBMS;创建数据库;创建表;插入数据;检索数据;更新数据;删除数据;管理用户;备份数据库。

See all articles