有用戶(hù)使用皕杰報(bào)表連接數(shù)mysql據(jù)庫(kù),在sql語(yǔ)句中用as對(duì)字段名進(jìn)行了重命名,反應(yīng)重命名不起作用,as關(guān)鍵字無(wú)效。
于是對(duì)這個(gè)問(wèn)題進(jìn)行了測(cè)試驗(yàn)證,果然是重命名無(wú)效,數(shù)據(jù)集展開(kāi)顯示的還是原來(lái)的字段名。于是就上網(wǎng)搜索了一下問(wèn)題,有人把問(wèn)題定位到useOldAliasBehavior屬性上,這個(gè)屬性是通過(guò)jdbc連接數(shù)據(jù)庫(kù)的屬性設(shè)置,默認(rèn)值為false,就是使用字段原名,不使用重命名。把useOldAliasBehavior值設(shè)為true就可以正常顯示字段的重命名了,果真是這樣嗎?
于是用皕杰報(bào)表設(shè)計(jì)器進(jìn)行了測(cè)試,在連接數(shù)據(jù)庫(kù)的url中加上了useOldAliasBehavior=true,見(jiàn)下圖:

再展開(kāi)數(shù)據(jù)集查看,用as重命名的字段名都顯示出來(lái)了。
那么是不是只有mysql數(shù)據(jù)庫(kù)有這個(gè)問(wèn)題呢?測(cè)試ORACLE,不需設(shè)置,應(yīng)該是mysql數(shù)據(jù)庫(kù)的個(gè)性問(wèn)題。需要注意的是GBASE-8a中有useOldAliasBehavior參數(shù),其默認(rèn)值是什么,你可以自己測(cè)試下。
連接mysql的URL是:
jdbc:mysql://localhost/testDB? useOldAliasMetadataBehavior=true
如果還存在編碼問(wèn)題和時(shí)區(qū)問(wèn)題,可以把編碼和時(shí)區(qū)設(shè)置都加上:
jdbc:mysql://localhost/testDB?useOldAliasMetadataBehavior=true&useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull