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

返回列表 發(fā)帖
查看: 3398|回復(fù): 6

[求助] 分表升級(jí)失敗

2

主題

2

回帖

10

積分

初學(xué)乍練

貢獻(xiàn)
0 點(diǎn)
金幣
5 個(gè)
樓主
發(fā)表于 2023-1-12 13:07:45 | 只看樓主 |倒序?yàn)g覽 |閱讀模式
執(zhí)行流程

?step=innodb&table=pre_forum_post_1

  1. (1075) Incorrect table definition; there can be only one auto column and it must be defined as a key
  2. ALTER TABLE forum_post_1 ENGINE=InnoDB;
復(fù)制代碼


get_scheme_update_sql 沒(méi)有對(duì)分表僅需處理


我知道答案 回答被采納將會(huì)獲得1 貢獻(xiàn) 已有6人回答
回復(fù)

使用道具 舉報(bào)

2

主題

1410

回帖

2043

積分

應(yīng)用開發(fā)者

啦啦啦~

貢獻(xiàn)
55 點(diǎn)
金幣
320 個(gè)
沙發(fā)
發(fā)表于 2023-1-13 22:45:29 | 只看Ta
感謝您的反饋,我們寫個(gè)了修復(fù),可以參考下。
具體得等測(cè)試,測(cè)試好了再合并。

  1. if (preg_match("/^pre_forum_post_(\\d+)$/i", $table)) {
  2.         logmessage("$table is special post table, need special alter.");
  3.         $sql = "ALTER TABLE ".str_replace(' pre_', ' '.$config['tablepre'], $table)." MODIFY COLUMN position INT unsigned NOT NULL DEFAULT \'0\'";
  4.         logmessage("RUNSQL ".$sql);
  5.         DB::query($sql);
  6.         logmessage("RUNSQL Success");
  7. } else {
  8.         $sql = get_innodb_scheme_update_sql($table);
  9.         logmessage("RUNSQL ".$sql);
  10.         DB::query($sql);
  11.         logmessage("RUNSQL Success");
  12. }
復(fù)制代碼
回復(fù)

使用道具 舉報(bào)

3

主題

15

回帖

23

積分

初學(xué)乍練

貢獻(xiàn)
0 點(diǎn)
金幣
4 個(gè)
板凳
發(fā)表于 2023-4-16 16:45:40 | 只看Ta
本帖最后由 sohigh 于 2023-4-16 17:15 編輯
老周部落 發(fā)表于 2023-1-13 22:45
感謝您的反饋,我們寫個(gè)了修復(fù),可以參考下。
具體得等測(cè)試,測(cè)試好了再合并。

$sql = "ALTER TABLE ".str_replace(' pre_', ' '.$config['tablepre'], $table)." MODIFY COLUMN position INT unsigned NOT NULL DEFAULT \'0\'";

這句沒(méi)執(zhí)行
logmessage("$table is special post table, need special alter.");都沒(méi)顯示在日志里

回復(fù)

使用道具 舉報(bào)

13

主題

3098

回帖

5270

積分

應(yīng)用開發(fā)者

貢獻(xiàn)
365 點(diǎn)
金幣
158 個(gè)
QQ
地板
發(fā)表于 2023-4-16 17:15:12 | 只看Ta
sohigh 發(fā)表于 2023-4-16 16:45
pre_forum_post_1  的 position列已經(jīng)變成了自增列,也是主鍵了。但是還報(bào)錯(cuò)

(1075) Incorrect table defi ...

去掉 自增 就好了
回復(fù)

使用道具 舉報(bào)

3

主題

15

回帖

23

積分

初學(xué)乍練

貢獻(xiàn)
0 點(diǎn)
金幣
4 個(gè)
5#
發(fā)表于 2023-4-16 17:16:38 | 只看Ta

是我搞錯(cuò)了,問(wèn)題是
$sql = "ALTER TABLE ".str_replace(' pre_', ' '.$config['tablepre'], $table)." MODIFY COLUMN position INT unsigned NOT NULL DEFAULT \'0\'";

這句沒(méi)執(zhí)行
logmessage("$table is special post table, need special alter.");都沒(méi)顯示在日志里
回復(fù)

使用道具 舉報(bào)

13

主題

3098

回帖

5270

積分

應(yīng)用開發(fā)者

貢獻(xiàn)
365 點(diǎn)
金幣
158 個(gè)
QQ
6#
發(fā)表于 2023-4-16 17:24:55 | 只看Ta
sohigh 發(fā)表于 2023-4-16 17:16
是我搞錯(cuò)了,問(wèn)題是
$sql = "ALTER TABLE ".str_replace(' pre_', ' '.$config['tablepre'], $table)."  ...

自己 手動(dòng)操作數(shù)據(jù)庫(kù)表 就好了……

Navicat連接數(shù)據(jù)庫(kù),  表上 右鍵  設(shè)計(jì) 數(shù)據(jù)庫(kù), 選中字段,  去除 自增勾選, 然后保存 就可以了
回復(fù)

使用道具 舉報(bào)

3

主題

15

回帖

23

積分

初學(xué)乍練

貢獻(xiàn)
0 點(diǎn)
金幣
4 個(gè)
7#
發(fā)表于 2023-4-19 21:17:40 | 只看Ta
天外飄仙 發(fā)表于 2023-4-16 17:24
自己 手動(dòng)操作數(shù)據(jù)庫(kù)表 就好了……

Navicat連接數(shù)據(jù)庫(kù),  表上 右鍵  設(shè)計(jì) 數(shù)據(jù)庫(kù), 選中字段,  去除 自增 ...

我是這樣操作的,我想說(shuō)怎么腳本沒(méi)用,是不是哪里錯(cuò)了,你們?cè)俨橄拢糠奖愫竺娴娜?/td>
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

  • 關(guān)注公眾號(hào)
  • 有償服務(wù)微信
  • 有償服務(wù)QQ

手機(jī)版|小黑屋|Discuz! 官方交流社區(qū) ( 皖I(lǐng)CP備16010102號(hào) |皖公網(wǎng)安備34010302002376號(hào) )|網(wǎng)站地圖|star

GMT+8, 2025-7-3 00:16 , Processed in 0.062884 second(s), 12 queries , Redis On.

Powered by Discuz! W1.0 Licensed

Cpoyright © 2001-2025 Discuz! Team.

關(guān)燈 在本版發(fā)帖
有償服務(wù)QQ
有償服務(wù)微信
返回頂部
快速回復(fù) 返回頂部 返回列表