同样的mysql语句在navicat里可远程执行,在linux里执行报错 5
在linux下导入报错[root@localhostbin]#./mysql-usmu-p123456CMS</home/ins_task.sqlERROR1064(42...
在linux下导入报错
[root@localhost bin]# ./mysql -u smu -p123456 CMS < /home/ins_task.sql
ERROR 1064 (42000) at line 4: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 4
[root@localhost bin]#
语句如下:
DROP PROCEDURE IF EXISTS INS_TASK;
CREATE PROCEDURE INS_TASK () BEGIN DECLARE A VARCHAR (120);
DECLARE B VARCHAR (120);
DECLARE C INT (10) DEFAULT 0;
DECLARE CUR_1 CURSOR FOR SELECT PUID, PUNAME FROM EQUIP WHERE EQUIP.PUID NOT IN (SELECT PUID FROM TASK);
DECLARE CONTINUE HANDLER FOR NOT FOUND SET C = 1;
OPEN CUR_1;
FETCH CUR_1 INTO A, B;
WHILE C <> 1 DO INSERT INTO TASK ( GUID, GUNAME, PUID, GUTYPE, DOMAINID ) VALUES ( CONCAT(A, '100'), B, A, '1', '100200' );
FETCH CUR_1 INTO A, B;
END WHILE;
CLOSE CUR_1;
END;
CALL INS_TASK;
DROP PROCEDURE INS_TASK; 展开
[root@localhost bin]# ./mysql -u smu -p123456 CMS < /home/ins_task.sql
ERROR 1064 (42000) at line 4: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 4
[root@localhost bin]#
语句如下:
DROP PROCEDURE IF EXISTS INS_TASK;
CREATE PROCEDURE INS_TASK () BEGIN DECLARE A VARCHAR (120);
DECLARE B VARCHAR (120);
DECLARE C INT (10) DEFAULT 0;
DECLARE CUR_1 CURSOR FOR SELECT PUID, PUNAME FROM EQUIP WHERE EQUIP.PUID NOT IN (SELECT PUID FROM TASK);
DECLARE CONTINUE HANDLER FOR NOT FOUND SET C = 1;
OPEN CUR_1;
FETCH CUR_1 INTO A, B;
WHILE C <> 1 DO INSERT INTO TASK ( GUID, GUNAME, PUID, GUTYPE, DOMAINID ) VALUES ( CONCAT(A, '100'), B, A, '1', '100200' );
FETCH CUR_1 INTO A, B;
END WHILE;
CLOSE CUR_1;
END;
CALL INS_TASK;
DROP PROCEDURE INS_TASK; 展开
1个回答
展开全部
在Linux的bash下执行Mysql语句 应该是这样的
mysql -uroot -p123456 -e "select * from a.b" 参数-e 后面跟sql语句 而且要指定哪个数据库的哪个表
mysql -uroot -p123456 -e "select * from a.b" 参数-e 后面跟sql语句 而且要指定哪个数据库的哪个表
更多追问追答
追问
谢谢您的回答!我是把以上语句写到ins_task.sql里面去的。我试过一些简单的查询是可行的,问题肯定是出在这些语句上。
追答
你要执行sql脚本的话 应该是 -e "use [database_name];source /home/ins_task.sq" 这个应该是用source指令把脚本加进去运行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
TableDI
2024-07-18 广告
2024-07-18 广告
`VLOOKUP` 匹配出错误的数据通常是由于以下几个原因:1. **查找值错误**:输入的查找值与数据源中的值不匹配,可能是因为拼写错误、大小写不一致或存在不可见的字符。2. **查找区域设置错误**:查找区域的首列必须包含要查找的值,且...
点击进入详情页
本回答由TableDI提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询