Я рассматриваю таблицу в MySQL, у которой есть странное имя столбца. Я хочу изменить имя столбца, чтобы не было странным. Я не могу понять, как это сделать.Имя столбца MySQL - странный символ - как его изменить?
Во-первых, если я сначала сделать
SET NAMES utf8;
DESC `tblName`;
я
| Ԫ | varchar(255) | YES | MUL | NULL | |
Вместо этого делать
SET NAMES latin1;
DESC `tblName`;
Результаты в
| ? | varchar(255) | YES | MUL | NULL | |
Достаточно честно - это заставляет меня думать, что имя столбца - это просто знак вопроса latin1. Но это утверждение не работает:
mysql> ALTER TABLE `tblName` CHANGE COLUMN `?` `newName` VARCHAR(255);
ERROR 1054 (42S22): Unknown column '?' in 'tblName'
Так что я пошел к столу information_schema некоторой информации:
mysql> SELECT column_name, HEX(column_name), ordinal_position FROM information_schema.columns WHERE table_schema = 'myschema' AND table_name = 'tblName' ;
| ? | D4AA | 48 |
Я смотрел эту шестигранную точку, и предполагая, я посмотрел его правильно (что может неправда), я определил, что этот персонаж «풪», который является «словом слога». Поэтому я попробовал это в заявлении об изменении таблицы безрезультатно:
ALTER TABLE `tblName` change column `풪` `newName` VARCHAR(255);
Так вот, где я застрял.
С чего вы работаете с клиентом mysql? Linux, Mac, Windows и т. Д.? –
@AlastairMcCormack Сервер работает на Debian, и я запускаю клиент из Ubuntu. Итак, все это Linux. – buck