我正在开发一个PHP,MySQL应用程序。我遵循这个原则,在MySQL表中使用与相同的列名。
我发现它确实是一种很好的设计技巧:
采用这样一种设计技术是一种良好的实践吗?我不是专家,这是否暴露了我们的数据库结构?
我还考虑了上述设计的一个变体,在创建数据库列时,我在HTML变量中附加了几个字符串。
发布于 2014-12-06 14:26:14
这将很好地适用于列名,这是一个很好的做法。我在表和视图中都成功地使用了它。
其他人也指出了一些值得重复的地方:你需要保护你的应用程序免受黑客攻击。如果一个坏蛋试图向您发送包含虚假列名的web请求,您肯定不希望您的代码将它们传递出去。尝试在对数据库服务器的请求中使用来自不受信任源的列名是一个很大的安全风险,特别是对于插入、更新或删除。你需要对你的应用程序中确保列名干净的部分格外小心。
需要注意的事情:对大小写敏感。在MySQL中,您在列名大小写敏感性方面处于良好的状态。但是表名的情况可以根据运行MySQL服务器的操作系统而改变。为了获得最佳的可移植性,您可能应该使您的表名都是小写的。这是关于那个主题的一篇文章。http://dev.mysql.com/doc/refman/5.0/en/identifier-case-sensitivity.html
如果将该项目移植到Oracle,您将发现自己的列名中存在区分大小写的混乱。
https://stackoverflow.com/questions/27332260
复制相似问题