如何在MySQL中写入更多USER_NICENAME字符

时间:2018-01-14 作者:Ann

我在网站上安装了该插件,以进行俄语注册(允许西里尔文用户名),现在我需要在sql数据库中的wp\\u users表中的user\\u nicename permission列中更改,以写入更多字符,默认值为50到255。如何做到这一点?已尝试,但无效:ALTER TABLE wp\\U users ALTER COLUMN user\\U nicename varchar(200)not NULL-错误

更改表格wp_users 改变user_nicename user_nicename VARCHAR(255)不为NULL默认值“”-网络提示中发现错误#1067:显示“sql\\U模式”之类的变量;并删除sql\\u模式“NO\\u ZERO\\u IN\\u DATE,NO\\u ZERO\\u DATE”,使其正常工作。这个怎么做?

1 个回复
SO网友:nikolai

这是解决方案,来自SkyVerge的Steve帮我解决了这个问题,很抱歉没有编辑,现在是凌晨2点,我太累了:

嗨,Steve,看起来问题已经解决了。没有必要更改“允许来宾登录”,因为问题最终是其他问题。

在对问题和解决方案进行了大量研究之后,我还将把这篇文章发布到网上,因为我发现其他几个人都不知道如何解决这个问题,而且没有关于如何解决这个问题的说明。

以下是我将在网上发布的简介,也是为了防止其他人在用户名中使用特殊字符(中文、日语、俄语、希腊语等),他们似乎也有这个问题,下面是解决方案:

问题是:

当用户创建用户名时,例如:使用俄语西里尔文,wordpress最初不接受这种特殊字符,因此其他人(像我一样)使用插件(例如:用户名中的wordpress特殊字符(我有这个,但还有其他的)),将西里尔字母转换为html格式,这允许从wordpress中手动创建带有西里尔字母的用户名wordpress的用户名之所以出现这种中断,是因为当转换发生时,对于1个俄语西里尔文字母,我想大约会创建5个html字符,因此,像АааСаиВааиииииииииииииииииииииииаиииииииииииииа?这样的俄语名称/姓氏将最大化数据库中的字符数(我认为大约是50或60个字符),特别是最大化:db>username>user\\u nicename此更改的典型命令:ALTER TABLEwp_users 修改user_nicename VARCHAR(255)

  • 要绕过此模式,必须访问根管理器sql控制台并执行此操作:
    1. 首先检查并记录当前sql模式,方法是:显示“sql\\u模式”之类的变量;,并写下给定的模式(因为我们需要在更改后重新使用该模式),接下来,将新的全局模式设置为没有“NO\\u ZERO\\u IN\\u DATE,NO\\u ZERO\\u DATE”的模式,例如:set global sql\\u mode=“ONLY\\u FULL\\u GROUP\\u BY,STRICT\\u TRANS\\TABLES,ERROR\\u for\\u DIVISION\\u BY\\u ZERO,NO\\u ENGINE\\u SUBSTITUTION”
  • 现在允许此命令执行:ALTER TABLEwp_users 修改user_nicename VARCHAR(255)
  • 运行该命令,现在通过使用:set global sql\\u mode=\'返回到以前的sql模式,键入步骤10.1中记录的任何模式,即现在带有特殊字符的用户名将自动作为用户创建的用户名进行处理,没有错误。,当然,它做到了(创建了成员身份),这让我意识到问题在于user\\u nicename的varchar长度,因为更长的名称无法通过

    所以,感谢你们的努力,并没有放弃我,你们是我有过的最好的客户支持,你们从未放弃过我,对我非常耐心,我非常感谢你们的帮助和指导:)

  • 结束