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
。这根本不应该是问题。