MySQL查询截断错误
我有这样的疑问,不知道为什么它给我的错误。我想创建一个表,如果它还没有创建,如果它已经创建,然后截断它,然后在该表中插入以下内容MySQL查询截断错误,mysql,mysql-error-1064,Mysql,Mysql Error 1064,我有这样的疑问,不知道为什么它给我的错误。我想创建一个表,如果它还没有创建,如果它已经创建,然后截断它,然后在该表中插入以下内容 CREATE TABLE IF NOT EXISTS `(temp)_v5_userInfo_Netsprint_Data_import` ( onlineId VARCHAR(255), paramId INT, paramValue INT ) TRUNCATE TABLE `(temp)_v5_userInfo_Netsprint_Dat
CREATE TABLE IF NOT EXISTS
`(temp)_v5_userInfo_Netsprint_Data_import`
(
onlineId VARCHAR(255),
paramId INT,
paramValue INT
)
TRUNCATE TABLE
`(temp)_v5_userInfo_Netsprint_Data_import`
INSERT INTO
`(temp)_v5_userInfo_Netsprint_Data_import`
SELECT
`ui`.`onlineId`, `uin`.`paramId`, `uin`.`paramValue`
FROM
`(temp)v5_userInfo_COLD` `ui`
JOIN
`v5_(readOnly)userInfo_number` `uin`
ON
`uin`.`userId` = `ui`.`id`
;
前两个语句缺少分隔符;
添加它们,它就会起作用。这其中有两个因素。首先,正如@krishKM所说,您缺少分号。声明应为:
CREATE TABLE IF NOT EXISTS `(temp)_v5_userInfo_Netsprint_Data_import`
(
onlineId VARCHAR(255),
paramId INT,
paramValue INT
);
TRUNCATE TABLE `(temp)_v5_userInfo_Netsprint_Data_import`;
INSERT INTO `(temp)_v5_userInfo_Netsprint_Data_import`
SELECT `ui`.`onlineId`,
`uin`.`paramId`,
`uin`.`paramValue`
FROM `(temp)v5_userInfo_COLD` `ui`
JOIN `v5_(readOnly)userInfo_number` `uin` ON `uin`.`userId` = `ui`.`id`;
其次,验证将执行此语句的用户的权限。截断
我的猜测是,您的用户拥有数据+创建权限,但这还不够
如果添加删除权限是一个障碍,那么一个可能的解决方法是执行
DELETE FROM `(temp)_v5_userInfo_Netsprint_Data_import`;
当然,速度较慢。问题在于缺少分号。谢谢大家的帮助,我已经设法解决了这个问题。