数据库列和外键规范化

eri*_*ric 7 database standards normalization

我正在为我的公司建立一个新系统(灯 - ubuntu服务器,php 5.3,mysql 5.5,apache 2,redis)(比如版本2.0)

我想做对,让它变得更好.

我想使用innodb,我想知道命名列和外键是否有标准.

例如:

table_a
 table_a_id
 table_a_name
 etc...
Run Code Online (Sandbox Code Playgroud)

这种方式当你离开加入它很容易区分,但如果你有很长的名字,编写SQL可能会很痛苦.

table_a
 id
 name
 etc...
Run Code Online (Sandbox Code Playgroud)

这样,表格很容易理解,但每次离开连接时都必须使用别名或表名.

命名数据库规范化的database.table.column部分?

E.G*_*.G. 11

数据库,表,列,键,外键的命名约定与数据库规范化无关.

虽然,我建议在任何地方保持相同的命名约定结构.我的所有名字都非常标准,单词或者如果它是一个短语,它用下划线分隔,没有数字也没有特殊的字符.对于列,键和fk都是一样的(除了数字)我总是使用plurials(它很少见,你只有1个数据库,1个表有1列和1行)

这是我的所作所为:

databases: companies
tables: clients, clients_products, products
column: id, name, address, city
key: name
unique key: name
Run Code Online (Sandbox Code Playgroud)

这样,当您查询数据时,您可以清楚地了解您的要求或要求的内容.