问题描述
|
问题在于部署MysqL DB在Linus上,而开发MysqL DB在Windows上。
DB是InnoDB。因此出现了区分大小写的表名的问题。
我找到了像这样的解决方案:
function getTableName($table_name){
$query=\"select TABLE_NAME from `information_schema`.`TABLES` where table_name
like \'%$table_name%\' \";
$result=MysqL_query($query,$this->connection);
$err_number=MysqL_errno($this->connection);
if (!$err_number){
$num_rows = MysqL_num_rows($result);
if ($num_rows==1){
$row = MysqL_fetch_assoc($result);
return $row[\"TABLE_NAME\"];
}else {
return \"\";
}
}else {
return \"\";
}
}
因此,从操作系统类型来说,它是唯一的。但是可能存在MysqL做同样的选择吗?
解决方法
使用lower_case_table_names选项