文章详情页
				mysql - 这样写替换表前缀的句子哪里有问题
浏览:111日期:2022-06-21 08:07:13
					
					
					问题描述
Select CONCAT( ’ALTER TABLE ’, table_name, ’ RENAME TO jh_’, substring(table_name,6 ),’;’ )FROM information_schema.tables Where table_name LIKE ’33hao_%’;
想把数据库名为jh中的表前缀为33hao_的换成前缀为jh_
执行上面的代码后ALTER 出很多句子,但在执行这些ALTER句子时出现错误,如下
[SQL]ALTER TABLE 33hao_activity RENAME TO jh__activity;[Err] 1146 - Table ’jh.33hao_activity’ doesn’t exist
不知哪里写错了
问题解答
回答1:下划线也是通配符,应该做escape处理,否则把一些不是前缀为33hao_的表也包含了
select ... from table_name nformation_schema.tables where table_name LIKE ’33hao_%’回答2:
是不是数据库用错了,jh这个数据库真的有33hao_activity这个表嘛?
上一条:设置完mysql索引之后 如何使用下一条:mysql语句查询
					
					
					
					
					
					相关文章:
1. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!2. 想写一个python分析统计apache 日志文件的脚本3. python - 两千万条结构化数据怎么进行数据分析4. objective-c - 做一个百度地图定位的demo,结果出错好多。5. [MySQL] 如何存储 array比较合适?6. php - mysql 模糊搜索问题7. android - 百度地图拖拽图标后原来位置的图标还在?8. python 多进程 或者 多线程下如何高效的同步数据?9. python - 使用 phantomjs 打开页面不完整,是哪里出了问题?10. mysql优化 - mysql 多表联合查询中有order by和sum的情况下,索引如何设计?
排行榜
				
网公网安备