亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

varchar 類型的 SymmetricDS 長度不能超過 N

varchar 類型的 SymmetricDS 長度不能超過 N

哈士奇WWW 2021-07-09 18:46:46
所以我試圖使用symmetricDS將 java h2 數據庫復制到 postgres。我正在使用zip文件簡單配置。這是發生了什么。我遵循了入門指南,下載了 symmetricds,并嘗試了演示,然后我嘗試了我自己的配置,并在觸發器中使用了一些表。但:如果我復制沒有varchar字段的表,h2它工作得很好。如果我有一個包含varchar字段的表,它會在創建表時崩潰。JdbcSqlTemplate - ERROR: length for type varchar cannot exceed 10485760  Position: 161.  Failed to execute: CREATE TABLE "asset"(    "db_id" BIGINT NOT NULL  DEFAULT nextval('"asset_db_id_seq"'),    "id" BIGINT NOT NULL,    "account_id" BIGINT NOT NULL,    "name" VARCHAR(2147483647) NOT NULL,    "description" VARCHAR(2147483647),    "quantity" BIGINT NOT NULL,    "decimals" SMALLINT NOT NULL,    "initial_quantity" BIGINT NOT NULL,    "height" INTEGER NOT NULL,    "latest" BOOLEAN DEFAULT 'TRUE' NOT NULL,    PRIMARY KEY ("db_id"))確實是一個明顯的錯誤,說 varchar 不應超過 255,但這就是源數據庫的情況,無論如何要強制輸入任何 varcharTEXT嗎?或者有其他方法可以解決這個問題嗎?或者這是一個symmetricds尚未解決的錯誤?謝謝。
查看完整描述

1 回答

?
墨色風雨

TA貢獻1853條經驗 獲得超6個贊

我設法通過手動在目標數據庫上創建表來解決這個問題。這是我在運行之前所做的bin/sym。

  • 生成查詢表我想用創造dbexportbin/dbexport --engine corp-000 --compatible=postgres --no-data table_a table_b > samples/create_asset_and_trade.sql

  • 修改生成的查詢文件中的缺陷samples/create_asset_and_trade.sql。就我而言,它是varchar.

  • 修復后,運行生成的查詢以使用dbimportbin/dbimport --engine store-001 samples/create_asset_and_trade.sql.

  • bin/sym現在運行應該沒問題,它會檢測到表已經創建,并跳過表創建步驟。

這不是理想的方式,但現在應該可行。


查看完整回答
反對 回復 2021-07-14
  • 1 回答
  • 0 關注
  • 243 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號