0

问题

我想获得社区对此事的意见和解决方法。

给定一个表格

<form>
Employee ID <input type="text" name="employee_id"><br>
First name: <input type="text" name="first_name"><br>
Last name: <input type="text" name="last_name">
</form>

映射到表

CREATE TABLE `employee` (
  `employee_id` varchar(50) NOT NULL,
  `first_name` varchar(50) NOT NULL,
  `last_name` varchar(50) NOT NULL,
  PRIMARY KEY (`employee_id`)
) 

表单元素的名称与其基础表列匹配是一种好习惯还是坏习惯?

这些是我正在努力解决的问题:

优点

具有相同名称的一个优点是我可以有一个通用的数据访问对象,您可以在其中传递表单名称,它可以轻松创建所需的 SQL 代码。另一个是容易记住正确的列/表单名称是什么,尤其是当数据被传递并存储在关联数组中时。

缺点

安全。虽然我不是安全专家,但我觉得用户(和黑客)不必知道或推测任何关于存储介质的信息,包括表和列名。另一个缺点是,如果我有数据库命名约定(例如,pk_employee_id 而不是employee_id,因为该列是主键),那么我可能会被迫在我的 HTML 和服务器端代码中使用这些相同的约定,以便名称匹配。

因此

鉴于您可以提供的这些考虑和其他考虑,谁能告诉我他们在这件事上的立场和做法是什么?如果您认为名称应该不同,如何在代码中实现名称匹配/转换(也许,有一个单独的类来将一个类转换为另一个类)?

4

0 回答 0