set y_sql=concat_ws(' ','insert','into',tmp4data,'value','(',var1,var2,')')
select y_sql
看看y_sql合并生什么, 其次在动态SQL过程中, 你定义的tmp4data到底是变量还是表的名称,如果是名称就需要添加分号
如果是表不存在,提示的应该是:Table 'test.User' doesn't exist
(test是假设该表所在的数据库名)
因此判断你出错的原因是写入的字段错误,请提供更详细的信息(如代码片段)。。
补充:
将双引号改为单引号即可。
傻孩子, 你不能直接dbname.tablename 这样写, 你得先把他们concat起来, 因为他们是变量呀set @s=concat('alter table ',concat(dbname, '.', dablename),' rename to ',concat(dbname, '.', tabletime
))
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)