-- ===============================================
-- 分步骤修改business_cards表 - 逐步执行
-- 说明：请一步一步执行，每执行一步后检查结果
-- ===============================================

-- 第1步：检查表是否存在
SELECT table_name FROM information_schema.tables WHERE table_name = 'business_cards';
-- 期望结果：应该返回 business_cards

-- 第2步：查看当前表结构
SELECT column_name, data_type FROM information_schema.columns 
WHERE table_name = 'business_cards' ORDER BY ordinal_position;
-- 查看当前字段列表

-- 第3步：添加age字段
ALTER TABLE business_cards ADD COLUMN age INTEGER;
-- 执行后应该返回：ALTER TABLE

-- 第4步：验证age字段是否添加成功
SELECT column_name, data_type FROM information_schema.columns 
WHERE table_name = 'business_cards' AND column_name = 'age';
-- 期望结果：age | integer

-- 第5步：添加native_place字段
ALTER TABLE business_cards ADD COLUMN native_place TEXT;
-- 执行后应该返回：ALTER TABLE

-- 第6步：验证native_place字段是否添加成功
SELECT column_name, data_type FROM information_schema.columns 
WHERE table_name = 'business_cards' AND column_name = 'native_place';
-- 期望结果：native_place | text

-- 第7步：为age字段添加注释
COMMENT ON COLUMN business_cards.age IS '年龄字段 - 存储人员年龄信息，取值范围1-150';
-- 执行后应该返回：COMMENT

-- 第8步：为native_place字段添加注释
COMMENT ON COLUMN business_cards.native_place IS '籍贯字段 - 存储人员籍贯或出生地信息';
-- 执行后应该返回：COMMENT

-- 第9步：最终验证 - 查看两个新字段
SELECT column_name, data_type, is_nullable 
FROM information_schema.columns 
WHERE table_name = 'business_cards' 
  AND column_name IN ('age', 'native_place')
ORDER BY column_name;
-- 期望结果：
-- age          | integer | YES
-- native_place | text    | YES

-- 第10步：测试插入数据（可选）
-- INSERT INTO business_cards (name_zh, age, native_place) 
-- VALUES ('测试', 30, '北京市') RETURNING id, name_zh, age, native_place;

-- ===============================================
-- 执行指南：
-- 1. 复制每个步骤单独执行
-- 2. 检查每步的执行结果
-- 3. 如果某步失败，停止并检查错误原因
-- 4. 全部完成后，新字段就可以正常使用了
-- =============================================== 