ECSHOP網店程序在搬遷空間或恢復備份或更換域名后 ,經常會出現以下錯誤提示:
MySQL server error report:Array ( [0] => Array ( [message] => MySQL Query Error ) [1] => Array ( [sql] => Insert INTO `test`.`ecs_sessions` (sesskey, expiry, ip, data) VALUES (’8a3107988bf98cc9a5079fdfbe766120′, ’1278128679′, ’127.0.0.1′, ‘a:0:{}’) ) [2] => Array ( [error] => Table ‘test.ecs_sessions’ doesn’t exist ) [3] => Array ( [errno] => 1146 ) ) ,
這是因為你當初通過ECSHOP后臺備份時,少了兩個表,一個是 ecs_sessions ,一個是 ecs_sessions_data。既然是少了兩張表,那么我們想法給他重新建立就OK了唄。下面講下方法:
分別將下面兩段SQL語句復制粘貼到“ECSHOP后臺 》數據庫管理 》SQL查詢”的輸入框里提交即可。
CREATE TABLE IF NOT EXISTS `ecs_sessions` (
`sesskey` char(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
`expiry` int(10) unsigned NOT NULL DEFAULT '0',
`userid` mediumint(8) unsigned NOT NULL DEFAULT '0',
`adminid` mediumint(8) unsigned NOT NULL DEFAULT '0',
`ip` char(15) NOT NULL DEFAULT '',
`user_name` varchar(60) NOT NULL,
`user_rank` tinyint(3) NOT NULL,
`discount` decimal(3,2) NOT NULL,
`email` varchar(60) NOT NULL,
`data` char(255) NOT NULL DEFAULT '',
PRIMARY KEY (`sesskey`),
KEY `expiry` (`expiry`)
) ENGINE=MEMORY DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `ecs_sessions_data` (
`sesskey` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
`expiry` int(10) unsigned NOT NULL DEFAULT '0',
`data` longtext NOT NULL,
PRIMARY KEY (`sesskey`),
KEY `expiry` (`expiry`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
注意:
1)此例使用的是默認表前綴 ecs_ ,如果你的表前綴不是 ecs_ 請自行修改后 再提交
2)此例使用的是UTF8字符集 如果你使用的是GBK字符集 也請自行修改后,再提交。