2026-08-07-crm-name-pinyin-abbr.sql 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. -- 产品/客户名称拼音首字母(小写)
  2. -- 若列已存在会报 Duplicate column;可忽略或先查 information_schema。
  3. -- 建议仅执行一次。
  4. -- crm_product.name_pinyin_abbr
  5. SET @col_exists := (
  6. SELECT COUNT(*)
  7. FROM information_schema.COLUMNS
  8. WHERE TABLE_SCHEMA = DATABASE()
  9. AND TABLE_NAME = 'crm_product'
  10. AND COLUMN_NAME = 'name_pinyin_abbr'
  11. );
  12. SET @sql := IF(
  13. @col_exists = 0,
  14. 'ALTER TABLE `crm_product` ADD COLUMN `name_pinyin_abbr` varchar(100) DEFAULT NULL COMMENT ''产品名称拼音首字母(小写)'' AFTER `product_name`',
  15. 'SELECT ''crm_product.name_pinyin_abbr already exists, skip'''
  16. );
  17. PREPARE stmt FROM @sql;
  18. EXECUTE stmt;
  19. DEALLOCATE PREPARE stmt;
  20. -- crm_customer.name_pinyin_abbr
  21. SET @col_exists := (
  22. SELECT COUNT(*)
  23. FROM information_schema.COLUMNS
  24. WHERE TABLE_SCHEMA = DATABASE()
  25. AND TABLE_NAME = 'crm_customer'
  26. AND COLUMN_NAME = 'name_pinyin_abbr'
  27. );
  28. SET @sql := IF(
  29. @col_exists = 0,
  30. 'ALTER TABLE `crm_customer` ADD COLUMN `name_pinyin_abbr` varchar(100) DEFAULT NULL COMMENT ''客户名称拼音首字母(小写)'' AFTER `customer_name`',
  31. 'SELECT ''crm_customer.name_pinyin_abbr already exists, skip'''
  32. );
  33. PREPARE stmt FROM @sql;
  34. EXECUTE stmt;
  35. DEALLOCATE PREPARE stmt;