1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129
| --------------
SET AUTOCOMMIT = 0
--------------
--------------
START TRANSACTION
--------------
--------------
DROP DATABASE IF EXISTS `base`
--------------
--------------
CREATE DATABASE `base`
DEFAULT CHARACTER SET `latin1`
DEFAULT COLLATE `latin1_general_ci`
--------------
--------------
DROP TABLE IF EXISTS `test`
--------------
--------------
CREATE TABLE `test`
( `id` integer NOT NULL AUTO_INCREMENT PRIMARY KEY,
`ch1` char(255) NULL,
`ch2` char(255) NULL
) ENGINE=InnoDB
DEFAULT CHARSET=`latin1` COLLATE=`latin1_general_ci`
ROW_FORMAT=COMPRESSED
--------------
--------------
INSERT INTO `test` (`ch1`,`ch2`) VALUES
('Été', 'Été'), ('Forêt', 'Forêt')
--------------
--------------
SELECT id, ch1, length(ch1), ch2, length(ch2) FROM test
--------------
+----+-------+-------------+-------+-------------+
| id | ch1 | length(ch1) | ch2 | length(ch2) |
+----+-------+-------------+-------+-------------+
| 1 | Été | 3 | Été | 3 |
| 2 | Forêt | 5 | Forêt | 5 |
+----+-------+-------------+-------+-------------+
--------------
SELECT column_name, character_set_name, collation_name
FROM information_schema.COLUMNS
WHERE table_schema = 'base'
AND table_name = 'test'
ORDER BY ordinal_position
--------------
+-------------+--------------------+-------------------+
| column_name | character_set_name | collation_name |
+-------------+--------------------+-------------------+
| id | NULL | NULL |
| ch1 | latin1 | latin1_general_ci |
| ch2 | latin1 | latin1_general_ci |
+-------------+--------------------+-------------------+
--------------
ALTER TABLE `test` MODIFY `ch2` char(255) CHARACTER SET `utf8` COLLATE `utf8_general_ci`
--------------
--------------
SELECT column_name, character_set_name, collation_name
FROM information_schema.COLUMNS
WHERE table_schema = 'base'
AND table_name = 'test'
ORDER BY ordinal_position
--------------
+-------------+--------------------+-------------------+
| column_name | character_set_name | collation_name |
+-------------+--------------------+-------------------+
| id | NULL | NULL |
| ch1 | latin1 | latin1_general_ci |
| ch2 | utf8 | utf8_general_ci |
+-------------+--------------------+-------------------+
--------------
SELECT id, ch1, length(ch1), ch2, length(ch2) FROM test
--------------
+----+-------+-------------+-------+-------------+
| id | ch1 | length(ch1) | ch2 | length(ch2) |
+----+-------+-------------+-------+-------------+
| 1 | Été | 3 | Été | 5 |
| 2 | Forêt | 5 | Forêt | 6 |
+----+-------+-------------+-------+-------------+
--------------
ALTER TABLE `test` CONVERT TO CHARACTER SET `utf8` COLLATE `utf8_general_ci`
--------------
--------------
SELECT column_name, character_set_name, collation_name
FROM information_schema.COLUMNS
WHERE table_schema = 'base'
AND table_name = 'test'
ORDER BY ordinal_position
--------------
+-------------+--------------------+-----------------+
| column_name | character_set_name | collation_name |
+-------------+--------------------+-----------------+
| id | NULL | NULL |
| ch1 | utf8 | utf8_general_ci |
| ch2 | utf8 | utf8_general_ci |
+-------------+--------------------+-----------------+
--------------
SELECT id, ch1, length(ch1), ch2, length(ch2) FROM test
--------------
+----+-------+-------------+-------+-------------+
| id | ch1 | length(ch1) | ch2 | length(ch2) |
+----+-------+-------------+-------+-------------+
| 1 | Été | 5 | Été | 5 |
| 2 | Forêt | 6 | Forêt | 6 |
+----+-------+-------------+-------+-------------+
--------------
COMMIT
--------------
--------------
SET AUTOCOMMIT = 1
--------------
Appuyez sur une touche pour continuer... |
Partager