久久久久av_欧美日韩一区二区在线_国产精品三区四区_日韩中字在线

12下一頁
返回列表 發帖
查看: 4376|回復: 14

[已解決] 建立數據表 pre_common_payment_order ... 失敗

41

主題

842

回帖

1053

積分

已臻大成

貢獻
11 點
金幣
38 個
樓主
發表于 2022-8-29 13:53:13 | 只看樓主 |倒序瀏覽 |閱讀模式
全新安裝X3.5 220828每日構建版本提示:
建立數據表 pre_common_payment_order ... 失敗
MySQL 里面創建表,MySQL返回
#1071 - Specified key was too long; max key length is 1000 bytes



1 貢獻

最佳答案

install/data/install.sql
找到
  1. `type` varchar(255)  NOT NULL,
復制代碼

改為
  1. `type` varchar(190)  NOT NULL,
復制代碼
回復

使用道具 舉報

19

主題

2195

回帖

3310

積分

應用開發者

貢獻
74 點
金幣
629 個
QQ
沙發
發表于 2022-8-29 15:17:12 | 只看Ta
問下 你安裝的數據庫是 gbk 還是 utf8格式的?
這個提示 是索引字段長度太長,超過了1000bytes
回復

使用道具 舉報

41

主題

842

回帖

1053

積分

已臻大成

貢獻
11 點
金幣
38 個
板凳
 樓主| 發表于 2022-8-30 10:37:40 | 只看Ta
crx349 發表于 2022-8-29 15:17
問下 你安裝的數據庫是 gbk 還是 utf8格式的?
這個提示 是索引字段長度太長,超過了1000bytes
...

utf8mb4 ci 按照X3.5的環境需求配置的
回復

使用道具 舉報

17

主題

590

回帖

1854

積分

應用開發者

貢獻
66 點
金幣
902 個
QQ
地板
發表于 2022-8-30 12:11:31 | 只看Ta
mysql什么版本
回復

使用道具 舉報

31

主題

5901

回帖

1萬

積分

應用開發者

貢獻
619 點
金幣
1444 個
QQ
5#
發表于 2022-8-30 12:16:50 | 只看Ta
utf8mb4的數據表索引最大只支持250,而這個表里的其中type的索引為255,超出了最大值(當數據庫為UTF8時則不影響)
回復

使用道具 舉報

31

主題

5901

回帖

1萬

積分

應用開發者

貢獻
619 點
金幣
1444 個
QQ
6#
發表于 2022-8-30 12:22:44 | 只看Ta
如果您正在使用utf8mb4,并且varchar列上的唯一索引的長度超過191個字符,則需要打開innodb_large_prefix以允許索引中的更大列,因為utf8mb4需要比utf8或latin1更多的存儲空間。將以下內容添加到my.cnf文件中。

  1. [mysqld]
  2. innodb_file_format=barracuda
  3. innodb_file_per_table=1
  4. innodb_large_prefix=1
  5. init_connect='SET collation_connection = utf8mb4_unicode_ci'
  6. init_connect='SET NAMES utf8mb4'
  7. character-set-server=utf8mb4
  8. collation-server=utf8mb4_unicode_ci
復制代碼
回復

使用道具 舉報

19

主題

2195

回帖

3310

積分

應用開發者

貢獻
74 點
金幣
629 個
QQ
7#
發表于 2022-8-30 12:57:06 | 只看Ta
pcyi 發表于 2022-8-30 10:37
utf8mb4 ci 按照X3.5的環境需求配置的

my.cnf

  1. innodb_large_prefix=on
復制代碼

作用:啟用innodb_large_prefix選項,將約束項擴展至3072byte;

試試
回復

使用道具 舉報

41

主題

842

回帖

1053

積分

已臻大成

貢獻
11 點
金幣
38 個
8#
 樓主| 發表于 2022-8-30 14:41:16 | 只看Ta
湖中沉 發表于 2022-8-30 12:22
如果您正在使用utf8mb4,并且varchar列上的唯一索引的長度超過191個字符,則需要打開innodb_large_prefix以 ...

Windows 下的MySQL把填寫到 my.ini 文件后試了下,還是如此。
回復

使用道具 舉報

41

主題

842

回帖

1053

積分

已臻大成

貢獻
11 點
金幣
38 個
9#
 樓主| 發表于 2022-8-30 14:41:31 | 只看Ta
湖中沉 發表于 2022-8-30 12:22
如果您正在使用utf8mb4,并且varchar列上的唯一索引的長度超過191個字符,則需要打開innodb_large_prefix以 ...

Windows 下的MySQL把填寫到 my.ini 文件后試了下,還是如此。
回復

使用道具 舉報

41

主題

842

回帖

1053

積分

已臻大成

貢獻
11 點
金幣
38 個
10#
 樓主| 發表于 2022-8-30 14:41:45 | 只看Ta

MySQL 5.7.39
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

  • 關注公眾號
  • 有償服務微信
  • 有償服務QQ

手機版|小黑屋|Discuz! 官方交流社區 ( 皖ICP備16010102號 |皖公網安備34010302002376號 )|網站地圖|star

GMT+8, 2025-9-19 03:34 , Processed in 0.074225 second(s), 27 queries .

Powered by Discuz! W1.0 Licensed

Copyright © 2001-2025 Discuz! Team.

關燈 在本版發帖
有償服務QQ
有償服務微信
返回頂部
快速回復 返回頂部 返回列表