Yii 具有前缀名称和约束关键字的表
我读了一篇关于他的教程。本教程假设我创建了一个名为Yii 具有前缀名称和约束关键字的表,yii,mysql,sql,constraints,Yii,Mysql,Sql,Constraints,我读了一篇关于他的教程。本教程假设我创建了一个名为yii\u cms的数据库。但是,我决定在名为cdcol的数据库中创建它的表,并为所有表提供前缀yiicms\ucode> 因此,我将不存在yiicms.file时创建表(…更改为不存在yiicms.u文件时创建表() 我对以下行的问题: CONSTRAINT fk_file_user…它处理两个表file和user,而在我的例子中,它们的名称是yiicms_file和yiicms_user 我的问题是:如何安全地修改CONSTRAINT关键字来
yii\u cms
的数据库。但是,我决定在名为cdcol
的数据库中创建它的表,并为所有表提供前缀yiicms\ucode>
因此,我将不存在yiicms.file时创建表(…
更改为不存在yiicms.u文件时创建表(
)
我对以下行的问题:
CONSTRAINT fk_file_user…
它处理两个表file
和user
,而在我的例子中,它们的名称是yiicms_file
和yiicms_user
我的问题是:如何安全地修改CONSTRAINT关键字来处理带前缀的表名?与您重命名的表名完全相同。Mysql不知道它是“带前缀的”,它只是它的另一个表名。@zerkms我意识到mysql认为每一个下划线都是新表名的开始!换句话说,约束fk_yiicms_file_yiicms_user
会让它认为有一个名为yiicms
的表!不,它不是。
对它没有任何神奇的意义mysql@Strawberry:如何确切地说?即使是这样-问题是关于mysql,而不是关于某些第三方mysql管理器。我认为您尝试使用的命名约定没有问题。mysql也有大多数系统表的名称中都有下划线,并且数据库的名称中有数据库信息\u schema
。这根本不应该是问题。