MySQL表注释修改后不生效是因查询方式错误,ALTER TABLE COMMENT已落盘,应查information_schema.tables的table_comment字段而非DESCRIBE;PostgreSQL需用obj_description('t'::regclass,'pg_class')查表注释。MySQL 表注释修改后不生效,ALTER TABLE ... COMMENT 没报错但查不到不是没保存,是注释写到了表结构元数据里,但你查的方式不对。默认 show create table 会显示注释,但 describe 或 show columns 不会。确认是否真没生效:用 SELECT table_comment FROM information_schema.tables WHERE table_name = 'your_table' AND table_schema = 'your_db';字段注释同理:查 information_schema.columns 的 column_comment 字段,别只看 DESC注意字符集:如果数据库/表用的是 utf8mb4,但客户端连接用 utf8(实际是 utf8mb3),中文注释可能被截断或乱码存入,表现为"空注释"ALTER TABLE t COMMENT = '测试' 是 DDL,执行成功即已落盘,不存在"未保存"------只是你没查对地方PostgreSQL 中 COMMENT ON TABLE 执行成功却查不到注释PostgreSQL 注释存在 pg_description 系统表,但必须指定正确的 objoid 和 classoid,否则 obj_description() 返回空。查表注释正确姿势:SELECT obj_description('your_table'::regclass, 'pg_class'); ------ 必须用 ::regclass 转类型,不能直接传字符串字段注释要连表名一起查:SELECT col_description('your_table'::regclass, 1);(1 是字段序号),或更稳妥地用 SELECT description FROM pg_description WHERE objoid = 'your_table'::regclass AND objsubid = 2;(2 是第 2 列)权限限制:普通用户只能看到自己有 USAGE 权限的 schema 下的对象注释;跨 schema 时,即使注释存在也返回 NULL事务内执行 COMMENT 后未 COMMIT,其他会话不可见------这常被当成"没保存"执行注释语句时报错 Access denied; you need (at least one of) the SUPER privilege(s)不是所有 MySQL 版本都要求 SUPER,但 5.7+ 默认开启 sql_require_primary_key 或启用严格模式时,某些 DDL 会被误判为高危操作;更常见的是账号权限不足。 Tellers AI Tellers是一款自动视频编辑工具,可以将文本、文章或故事转换为视频。
相关推荐
Lucky_Turtle14 小时前
【Milvus】向量数据库databook14 小时前
用统计检验来确定“重要特征”吴声子夜歌14 小时前
MongoDB 8.0——安全性05664614 小时前
Python高级——解释器执行原理与虚拟环境工程化实战weixin_4357761114 小时前
2026年长沙托育vi设计从风格定位到元素运用的设计方法梦想三三14 小时前
LangChain RAG PDF 智能问答实战:用 Streamlit 构建本地知识库(完整代码)xcLeigh15 小时前
KingbaseES 的卢智能运维体架构深度拆解电化学仪器白超15 小时前
禹衡光栅长度计精度评测:基于国标0级氧化锆量块的校正与数据分析weixin_3975740915 小时前
按行业定制分析视角鹿角片ljp16 小时前
Redis 深度复习:从入门到面试通关