• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

MYSQL:Commands out of sync; you can’t run this command now解决办法

mysql 搞代码 7年前 (2018-05-31) 158次浏览 已收录 0个评论

mysql:Commands out of sync; you can’t run this command now
昨天请高人帮忙改了个存储过程,也觉得代码已经没问题了,但跑起来总是提示这个错误,头都大了。

存储过程代码如下:

SQL code

 -- -------------------------------------------- 
-- Routine DDL
-- --------------------------------------------
DELIMITER $$

CREATE DEFINER=`root`@`%` PROCEDURE `USP_CreateTrackerLogTable`(IN Pointer DATETIME,IN Counts INT)
begin
declare CountPointer int;
declare DateString varchar(20);
declare TableName varchar(50);
declare SQLTxt varchar(5000);
declare ExecuteSQL varchar(8000);
   
Set CountPointer = Counts;
   
Set SQLTxt = '
CREATE TABLE IF  NOT EXISTS Tracker_Log(
LogID bigint PRIMARY KEY  auto_increment NOT NULL,     /*自增ID*/
TrackerID varchar(50) NOT NULL,             /*日志ID*/
LogTime datetime NOT NULL,                 /*日志时间*/
SessionId varchar(50) NOT NULL,                     /*会话ID*/
PassportID bigint NULL,                     /*账户ID*/
UserID bigint NULL,                     /*用户ID*/
ClientIP varchar(64) NULL,                     /*客户端IP*/
ServerIP varchar(64) NULL,                 /*应用服务器IP*/
CurrentUrl varchar(255) NULL,                 /*当前页链接*/
ReferrerUrl varchar(255) NULL,                 /*前一页链接*/
ClickLinkUrl varchar(255) NULL,                 /*超链接链接地址*/
ClickLinkTitle nvarchar(200) NULL,                 /*超链接链接名*/
CurrentClientTime datetime NULL,                 /*当前客户端时间*/
CurrentServerTime datetime NULL,                 /*当前应用服务器时间*/
ClientServerTimeDif bigint Null,                     /*客户端与服务器时间差*/
ServerExecuteTime bigint NULL,                 /*应用服务器执行请求时间*/
NetTransTime bigint NULL,                     /*网络传输时间*/
ServerResponseTime datetime NULL,             /*服务器输出时时间*/
ClientLoadTime bigint NULL,                 /*客户端页面加载时间*/
UserDwellTime bigint NULL                     /*用户在当前页停留时间*/
);';

WHILE (CountPointer > 0) DO
        BEGIN
/*处理日期*/
            SET DateString = CONCAT(RIGHT(CAST(YEAR(Pointer) AS CHAR(4)), 2),'_',
            RIGHT('0' + CAST(MONTH(Pointer) AS CHAR(2)), 2),'_',
            RIGHT('0' + CAST(DAY(Pointer) AS CHAR(2)), 2));
             
Set TableName = 'Tracker_Log_' + DateString;

/*替换脚本字符串*/
Select ExecuteSQL = Replace(SQLTxt, 'Tracker_Log', TableName);

/*执行*/
            Select SQLTxt;
/*SET @asql=ExecuteSQL;
            PREPARE tt FROM @asql;
            EXECUTE tt;*/

欢迎大家阅读《MYSQL:Commands out of sync; you can't run this command now解决办法》,跪求各位点评,by 搞代码


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:MYSQL:Commands out of sync; you can’t run this command now解决办法
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址