我正在尝试在我的存储过程中创建一个临时表,该表从另一个表文本中获取一列数据。但是我得到了
使用的表类型不支持BLOB / TEXT列
消息。我怎么能绕过这个?这是我的代码,2015Consumer_stage
是包含文本列的表。
CREATE DEFINER=`root`@`localhost` PROCEDURE `uspLoadStateTables`()
BEGIN
DECLARE state varchar(2);
DECLARE rowcount int;
create temporary table statelist(TheState varchar(2)) engine=memory SELECT DISTINCT TRIM(ST) FROM `2015consumer_stage`;
select count(*) into rowcount from statelist;
select TheState into state from statelist;
答案 0 :(得分:2)
对于MEMORY / HEAP表,MySQL不支持TEXT
或BLOB
。见here。支持VARCHAR()
,但您应该尝试使用CHAR()
。 MySQL无论如何都会将它存储为固定长度。