使用表名cakephp中的参数或变量的动态表
我正在使用使用表名cakephp中的参数或变量的动态表,php,mysql,cakephp,Php,Mysql,Cakephp,我正在使用mysql创建一个动态表,查询表名应该是唯一的,这就是为什么我在表名中添加了用户id。 在控制器中: $last_id = $this->User->getLastInsertID(); //$table_name = 'hello_'.$last_id.'_tutors'; // debug($table_name); $this->User->query("CREATE TABLE IF NOT EXISTS `post_`.$last_id.`_tut
mysql
创建一个动态表,查询表名应该是唯一的,这就是为什么我在表名中添加了用户id。
在控制器中:
$last_id = $this->User->getLastInsertID();
//$table_name = 'hello_'.$last_id.'_tutors';
// debug($table_name);
$this->User->query("CREATE TABLE IF NOT EXISTS `post_`.$last_id.`_tutors` (
`id` int(8) NOT NULL AUTO_INCREMENT,
`user_id` int(8) NOT NULL,
`tutor_name` varchar(50) NOT NULL,
`tutor_email` varchar(50) NOT NULL,
`tutor_number` varchar(50) NOT NULL,
`tutor_gender` varchar(50) NOT NULL,
`tutor_address` varchar(100) NOT NULL,
`city_id` int(11) NOT NULL,
`area_id` int(11) NOT NULL,
`matric` varchar(200) NOT NULL,
`inter` varchar(200) NOT NULL,
`graduation` varchar(200) NOT NULL,
`masters` varchar(200) NOT NULL,
`diploma` varchar(200) NOT NULL,
`other_education` varchar(200) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=67 ;
");
它给出了如下语法错误:
语法错误或访问冲突:1064您的SQL中有错误
句法;检查与MySQL服务器版本对应的手册
使用.75附近的正确语法。\u tutors
(tutors\u name
varchar(50)不为空,tutor\u电子邮件
var'在第1行
如果有人可以帮忙,请提前感谢。尝试使用
$this->User->query("CREATE TABLE IF NOT EXISTS `post_".$last_id."_tutors` (
我的名声一定是15岁。