Zmiana komentarza do tabeli mysql

35

Wiem, że komentarz tabeli mysql można zdefiniować podczas tworzenia za pomocą:

create table (...)comment='table_comment';

Możesz wyświetlać komentarze według:

show table status where name='table_name';

Jak zmienić (zmienić?) Komentarz do tabeli po jej utworzeniu. Mam na myśli to, że bez upuszczania i ponownego tworzenia tabeli.

v14t
źródło

Odpowiedzi:

38
DROP TABLE IF EXISTS test_comments;
Query OK, 0 rows affected (0.08 sec)

CREATE TABLE test_comments (ID INT, name CHAR(30)) COMMENT 'Hello World';
Query OK, 0 rows affected (0.22 sec)

Sprawdź swoje komentarze w strukturze tabeli

show create table test_comments\G
*************************** 1. row ***************************
       Table: test_comments
Create Table: CREATE TABLE `test_comments` (
  `ID` int(11) DEFAULT NULL,
  `name` char(30) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Hello World'
1 row in set (0.00 sec)

Możesz również sprawdzić komentarze z Information_schema jak poniżej

SELECT TABLE_COMMENT FROM information_schema.TABLES WHERE TABLE_NAME = 'test_comments';
+---------------+
| TABLE_COMMENT |
+---------------+
| Hello World   |
+---------------+
1 row in set (0.00 sec)

Zmień tabelę, aby zmodyfikować komentarze

ALTER TABLE test_comments COMMENT = 'This is just to test how to alter comments';
Query OK, 0 rows affected (0.08 sec)
Records: 0  Duplicates: 0  Warnings: 0

Sprawdź zmodyfikowane komentarze

show create table test_comments\G
*************************** 1. row ***************************
       Table: test_comments
Create Table: CREATE TABLE `test_comments` (
  `ID` int(11) DEFAULT NULL,
  `name` char(30) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='This is just to test how to alter comments'
1 row in set (0.00 sec)

SELECT TABLE_COMMENT FROM information_schema.TABLES WHERE TABLE_NAME = 'test_comments';
+--------------------------------------------+
| TABLE_COMMENT                              |
+--------------------------------------------+
| This is just to test how to alter comments |
+--------------------------------------------+
1 row in set (0.00 sec)
Abdul Manaf
źródło
1
dziękuję za szczegółowe wyjaśnienie, zmiana tabeli w celu zmodyfikowania komentarzy była dokładnie tym, czego szukałem
v14t
Bonusowe pytanie: byłoby bezpieczne bezpośrednio modyfikować column_commentz information_schema.columns (ponieważ alter table ...wymaga, aby określić wszystkie definicję kolumny, znowu)?
Pierścień Ø