使用的表类型不支持BLOB / TEXT列

时间:2015-07-17 03:44:16

标签: mysql stored-procedures temp-tables

我正在尝试在我的存储过程中创建一个临时表,该表从另一个表文本中获取一列数据。但是我得到了

  

使用的表类型不支持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;

1 个答案:

答案 0 :(得分:2)

对于MEMORY / HEAP表,MySQL不支持TEXTBLOB。见here。支持VARCHAR(),但您应该尝试使用CHAR()。 MySQL无论如何都会将它存储为固定长度。