在 SQL 语句里 TYPE 是关键字,Python 语言里面 type()也是内置函数,在 MySQL 数据库里,商品类型的字段名用 type 作为列名,以后会有什么隐患和冲突吗?
|
1
sqlalchemy 里面映射的时候,给这个字段特别指定一下别名就行了
python 的层面也有办法处理 问题是你就不能用 item_type 吗 |
|
2
这种明知道会有隐患的命名还是换一个好吧。之前有一次 debug 一下午发现表里有一列的 index 是 sample,一直不能返回正确结果…
|
|
FarAheadApr 23, 2018
3
在 Rails 里面 item_type 会被认为是多态
|
|
orangeadeApr 23, 2018 via Android
4
type 还好,如果你用 order 做表名的话,还得用反引号
|
|
hebwjbApr 23, 2018 via iPhone
5
可以做映射
|
|
6
隐形中有了重构的需求
|
|
7
为什么不用 category..
|
|
night98Apr 23, 2018 via Android
8
表名首字母_type 这样会比较 OK
|
|
lozzowApr 23, 2018 via Android
9
我写 typo
|
|
ox180Apr 23, 2018
10
type_
|
|
11
所以我用 kind 这个词。
|
|
wspsxingApr 23, 2018
12
typo 路过
|
|
13
谢谢大家的建议,是接手的一个项目中有用 type 作商品分类的列名,虽然当前没什么问题,隐约有种不详之照,不想在以后出现莫名的坑,就想更改个命名,类型这个词呢 type 当然是最佳选择,不想造字的话,就选 category 和 kind 吧
|
|
yanze0613Apr 23, 2018
15
数据库对列名和表名有个明确的设定叫保留字
官网有表,尽量别用,不然麻烦 |
|
bomb77Apr 24, 2018
16
如一楼所说,sqlalchemy 映射的时候得用别名声明一下,看着有点变扭外,没遇到其他坑
如果可以,还是在数据库设计的时候就尽量不要用关键字命名吧 |
|
cristJul 5, 2018
17
typle 路过
|