系统粉 > 电脑问答 > 其他问答

已解决MySQL修改主键时出现的问题,在线等候讨论解答,急

提问者:樱墨may  |  浏览次  |  提问时间:2017-01-26  |  回答数量:5

MySQL修改主键时出现的问题,在线等候讨论解答,急 mysql服务器dos下使用 alter table gl1 add primary key (user_host);想进行修改表gl1的主键为user_host可是提示出这样的错误ERROR 1170 (42000): BLOB/TEXT column 'user_host' used in key specification without a key length为什么? 请高人指点!!谢谢!

已有5条答案
火焰雷735

火焰雷735

回答数:143  |  被采纳数:107

你的主键为user_host是不是BLOB/TEXT类型?
2017-01-26 23:35:52
赞 14
心碎的不只我

心碎的不只我

回答数:82  |  被采纳数:117

是这个类型mediumtext
2017-01-26 23:41:30
赞 8
繁华已成落幕

繁华已成落幕

回答数:93  |  被采纳数:127

BLOB/TEXT的列'user_host' 用的主要规格超过一个密钥的长度[s:479]
记得在Oracle中主键列就不能是long/lob类型[s:470]
你试着把类型改其他的试下!
2017-01-27 02:49:07
赞 9
海以南不蓝_丶

海以南不蓝_丶

回答数:169  |  被采纳数:65

这个问题 我已经解决了!!!
类型不符合的,我改了就行了!!

我现在是想要mysql的日志保存进一个table中,并且也要配置出 输出到外部log文件!!!
外部文件 我已经设置过了 能把所有操作过数据库的信息日志 都记录下来 打印到外部指定的log文件了,但是 这些信息日志 就是不知道怎么放进保存到一个指定的table中!!郁闷死!!
急 救!
2017-01-27 07:26:12
赞 16
囿迩黎也

囿迩黎也

回答数:211  |  被采纳数:105

set global log_output='TABLE';
一句话就搞顶了 ,牋谢谢戊辰之爱 ,我自己解决了!!

但是 发现MySQL 5.1.29具有还原功能的,此时设置了,但下次重新启动服务器的时候 又还原成默认的了

必须手动的设置 my.ini 文件设置成静态的,具体方法如下:
打开 安装MySQL 的路径 找到my.ini文件 打开编辑,在末尾加上以下配置 保存后,重新启动MySQL 就行了!!

#Enter a name for the binary log. Otherwise a default name will be used.
log_bin=
#Enter a name for the query log file. Otherwise a default name will be used.
log=
#Enter a name for the slow queries log file. Otherwise a default name will be used.
log_slow_queries=

#Enter a type for log output.Otherwise a default type is FILE.
log_output=TABLE
2017-01-27 13:34:02
赞 21
相关问答
最新其他问答
解决方法