我正在使用Sybase数据库,并想知道一个表是否包含一个与表名相同的列是有效的,例如:
CREATE TABLE foo
(
foo int not null,
etc...
)
答案 0 :(得分:3)
有效吗?当然。推荐的?没有。
答案 1 :(得分:0)
是的,我们当然可以这样做,但正如所说,不推荐。但为什么我们能这样做呢?好吧,因为表名条目进入系统表sysobjects但是列条目进入系统表syscolumns。
因此,使用表名作为列名没有限制,但通常不建议使用表名作为列名,因为它会使您的表结构有点混乱,并且还会给数据库设计增加不良做法。