应锁定业务实体与动词,用“的”字短语提取核心实体、动作词确定状态位,再以「业务含义|数据类型|约束条件」三列表格结构化输入,并强制字段命名前缀、禁用拼音下划线、绑定已有字段锚点,最后按读写频次排布字段顺序。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你写数据库建表需求时,ChatGPT总把字段名起成 user_name、user_age、is_active 这类看似合理实则脱离业务语境的泛化命名,导致开发要反复返工改表结构。
先锁定业务实体和核心动词
打开你的原始需求文档,用荧光笔标出所有带“的”字的名词短语(如“用户的收货地址”“订单的支付状态”“商品的库存预警阈值”),这些就是待建表的【核心实体】;再圈出所有动作类词(如“下单”“核销”“冻结”“续费”),这些动词决定字段是否该设计为状态位或操作时间戳。
这一步跳过会导致后续所有字段都漂在半空——ChatGPT没有业务上下文,只能按通用模板硬套。
用三列约束法喂给模型
把每个字段拆成「业务含义|数据类型|约束条件」三列,用竖线分隔,每行一个字段,不加任何说明文字。例如:
用户手机号|VARCHAR(11)|NOT NULL UNIQUE INDEX
会员等级|TINYINT|DEFAULT 0 CHECK (value BETWEEN 0 AND 5)
最后登录IP|INET6|NULL
不要写“请根据以下要求生成建表SQL”,直接粘贴三列表格。模型对结构化输入的响应精度比自然语言高3倍以上,【漏掉CHECK或INDEX声明会导致后期加索引锁表数小时】。
用于在用户想通过浏览器自动化与 Google Gemini 或 ChatGPT 交互时。触发短语包括“ask Gemini”“ask ChatGPT”“ask GPT”“让...”。
强制指定字段命名风格
方法一:前缀统一大法
在提示词开头加一句:“所有字段名必须以业务模块缩写开头,用户模块用usr_,订单模块用ord_,商品模块用itm_,禁止出现user_id、order_time这类无前缀字段。”
方法二:拒绝拼音+下划线组合
追加指令:“字段名中禁止出现拼音缩写(如‘shouhuo’)、禁止连续两个下划线、禁止数字结尾(如‘status_1’)。”
方法三:绑定领域词典
提供5个你系统里已存在的字段名作为锚点,例如:“参考已有字段:usr_auth_token、ord_actual_amount、itm_sku_code、pay_channel_code、log_create_time”。模型会自动对齐命名惯性。
让字段顺序反映读写频次
第一步:把高频查询字段(如主键、常WHERE条件字段、JOIN字段)放在最前面
第二步:把大字段(TEXT、JSON、BLOB)挪到末尾
第三步:把默认值为NULL且极少被更新的字段(如remark、ext_info)塞在倒数第二位
第四步:检查CREATE TABLE语句中字段顺序是否符合上述排列——若不符合,立刻重写提示词并强调“字段顺序即执行顺序,不可调整”
MySQL 8.0+ 对字段顺序敏感,ALTER TABLE ADD COLUMN 在中间位置会触发全表拷贝。这一步定死,能避开90%的线上DDL事故。

















