cms
cms copied to clipboard
7.2.1使用达梦数据库安装时,永远跳转到安装界面
安装完以后,还会继续跳回安装界面,并且无法登录后台
经查看,数据库表结构和基础数据都已创建成功,
粗略分析了一下,Datory\Database.cs中的
public async Task
相同的问题在Datory\DatabaseImpl\DmImpl.cs中的
public async Task<List
DBA_TABLES:DBA拥有的或者可以访问的所有关系表 ALL_TABLES:某一用户所拥有的或者可以访问的所有关系表 USER_TABLES:某一用户所拥有的所有关系表
收到,我们调整一下代码,感谢反馈
这个问题一直没有修复哦
问题已修复,更新到7.2.2版本即可。
7.2.2有问题,需要把Datory.Databaselmp.Dmlmpl.cs 93 var sql = $"SELECT COUNT() FROM user_tables WHERE owner = '{databaseName}' AND table_name = '{tableName}'"; 改成 var sql = $"SELECT COUNT() FROM user_tables WHERE table_name = '{tableName}'"; user_tables 没有 owner 列
7.2.2有问题,需要把Datory.Databaselmp.Dmlmpl.cs 93 var sql = $"SELECT COUNT() FROM user_tables WHERE owner = '{databaseName}' AND table_name = '{tableName}'"; 改成 var sql = $"SELECT COUNT() FROM user_tables WHERE table_name = '{tableName}'"; user_tables 没有 owner 列
看看是不是达梦数据库的版本太低导致的,用DM8试试,我们再DM8上测试是正常的。
7.2.2有问题,需要把Datory.Databaselmp.Dmlmpl.cs 93 var sql = $"SELECT COUNT() FROM user_tables WHERE owner = '{databaseName}' AND table_name = '{tableName}'"; 改成 var sql = $"SELECT COUNT() FROM user_tables WHERE table_name = '{tableName}'"; user_tables 没有 owner 列
看看是不是达梦数据库的版本太低导致的,用DM8试试,我们再DM8上测试是正常的。
测试安装的是DM8,安装包名是dm8_20230928_x86_win_64.zip,查了一下sys.user_tables的视图,没有owner字段
AS
SELECT /*+ LOCAL_OBJECT(V$TABLESPACE) LOCAL_OBJECT(V$HUGE_TABLESPACE) COMPLEX_VIEW_MERGING(0) */
O3.NAME TABLE_NAME,
CASE WHEN
O3.INFO3&0X3F IN (0x13, 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27)
THEN
HTS.NAME
ELSE
TS.NAME
END TABLESPACE_NAME,
NULL CLUSTER_NAME,
O3.NAME IOT_NAME,
DECODE(O3.VALID,'Y','VALID','UNUSABLE') STATUS,
CAST(NULL AS NUMBER) PCT_FREE,
CAST(NULL AS NUMBER) PCT_USED,
CAST(NULL AS NUMBER) INI_TRANS,
CAST(NULL AS NUMBER) MAX_TRANS,
CAST(NULL AS NUMBER) INITIAL_EXTENT,
CAST(NULL AS NUMBER) NEXT_EXTENT,
CAST(NULL AS NUMBER) MIN_EXTENTS,
CAST(NULL AS NUMBER) MAX_EXTENTS,
CAST(NULL AS NUMBER) PCT_INCREASE,
CAST(NULL AS NUMBER) FREELISTS,
CAST(NULL AS NUMBER) FREELIST_GROUPS,
NULL LOGGING,
NULL BACKED_UP,
CAST(SAMP.T_TOTAL AS NUMBER) NUM_ROWS,
CAST(SAMP.N_LEAF_PAGES AS NUMBER) BLOCKS,
CAST(SAMP.N_LEAF_PAGES - SAMP.N_LEAF_USED_PAGES AS NUMBER) EMPTY_BLOCKS,
CAST(NULL AS NUMBER) AVG_SPACE,
CAST(NULL AS NUMBER) CHAIN_CNT,
CAST(NULL AS NUMBER) AVG_ROW_LEN,
CAST(NULL AS NUMBER) AVG_SPACE_FREELIST_BLOCKS,
CAST(NULL AS NUMBER) NUM_FREELIST_BLOCKS,
NULL DEGREE,
NULL INSTANCES,
NULL CACHE,
'ENABLED' TABLE_LOCK,
CAST(SAMP.T_TOTAL AS NUMBER) SAMPLE_SIZE,
CAST(SAMP.LAST_GATHERED AS DATE) LAST_ANALYZED,
CASE WHEN SUB_COUNT IS NOT NULL AND SUB_COUNT > 0 THEN 'YES'
ELSE 'NO'
END PARTITIONED,
CASE WHEN O3.INFO1 & 0XFFFF0 = 0 THEN 'IOT' ELSE 'NULL' END IOT_TYPE,
CASE WHEN O3.INFO3_TMP IS NOT NULL AND O3.INFO3_TMP THEN 'Y' ELSE 'N' END TEMPORARY,
NULL SECONDARY,
NULL NESTED,
NULL BUFFER_POOL,
CAST(NULL AS VARCHAR(7)) FLASH_CACHE,
CAST(NULL AS VARCHAR(7)) CELL_FLASH_CACHE,
CASE WHEN O3.INFO3 & 0X400000 = 0 THEN 'DISABLED' ELSE 'ENABLED' END ROW_MOVEMENT,
'YES' GLOBAL_STATS,
'NO' USER_STATS,
CASE WHEN
O3.INFO3_TMP IS NOT NULL AND O3.INFO3_TMP
THEN
CASE WHEN O3.INFO3&0X10000 != 0 THEN 'SYS$SESSION' ELSE 'SYS$TRANSACTION' END
ELSE
NULL
END DURATION,
NULL SKIP_CORRUPT,
NULL MONITORING,
NULL CLUSTER_OWNER,
NULL DEPENDENCIES,
CASE WHEN T_TABCOL.PACK_COUNT IS NOT NULL
THEN CASE WHEN T_TABCOL.PACK_COUNT > 0 THEN 'ENABLED' ELSE 'DISABLED' END
ELSE NULL END COMPRESSION,
NULL COMPRESS_FOR,
NULL DROPPED,
NULL READ_ONLY,
CAST(NULL AS VARCHAR(3)) SEGMENT_CREATED,
CAST(NULL AS VARCHAR(7)) RESULT_CACHE,
CASE WHEN O3.INFO3 & 0x04000000000000 = 0 THEN 'DISABLED' ELSE 'ENABLED' END LONG_ROW
FROM
(SELECT ID, NAME, PID FROM SYS.SYSOBJECTS WHERE TYPE$ = 'SCH') O2
JOIN (SELECT ID, NAME, PID, SCHID, INFO1, INFO3, INFO3 & 0XC0 INFO3_TMP, VALID, SUB_COUNT FROM
(WITH T_TAB AS (SELECT * FROM SYS.SYSOBJECTS WHERE TYPE$ = 'SCHOBJ' AND SUBTYPE$ IN ('UTAB', 'STAB') AND NAME NOT LIKE '_%$AUX' AND NAME NOT LIKE '_%$RAUX' AND NAME NOT LIKE '_%$DAUX' AND NAME NOT LIKE '_%$UAUX' AND NAME NOT LIKE '_%$ALOG'
AND INFO3 & 0x100000000 = 0)
SELECT * FROM (SELECT * FROM T_TAB WHERE PID = -1) P_TAB LEFT JOIN
(SELECT PID SUB_PID, COUNT(PID) SUB_COUNT FROM T_TAB WHERE PID IS NOT NULL AND PID > 0 GROUP BY PID) SUBTAB ON SUBTAB.SUB_PID = P_TAB.ID)
) O3 ON O3.SCHID = O2.ID
JOIN (SELECT ID, PID FROM SYS.SYSOBJECTS WHERE SUBTYPE$='INDEX') T_INDEX ON T_INDEX.PID = O3.ID
JOIN (SELECT ID, GROUPID FROM SYS.SYSINDEXES WHERE XTYPE&0X01=0) T_IND ON T_INDEX.ID = T_IND.ID
LEFT JOIN (SELECT DISTINCT NAME, ID FROM SYS.V$TABLESPACE) TS ON T_IND.GROUPID = TS.ID
LEFT JOIN (SELECT DISTINCT NAME, ID FROM SYS.V$HUGE_TABLESPACE) HTS ON T_IND.GROUPID = HTS.ID
LEFT JOIN (SELECT ID, SUM(INFO1&0X01) PACK_COUNT FROM SYS.SYSCOLUMNS GROUP BY ID) T_TABCOL ON (T_TABCOL.ID = O3.ID)
LEFT JOIN (SELECT ID, T_TOTAL, N_SAMPLE, LAST_GATHERED, N_LEAF_PAGES, N_LEAF_USED_PAGES FROM SYS.SYSSTATS WHERE COLID=-1) SAMP ON O3.ID = SAMP.ID
WHERE
O2.PID = UID()
UNION ALL --外部表
SELECT /*+ COMPLEX_VIEW_MERGING(0) */
O3.NAME TABLE_NAME,
NULL TABLESPACE_NAME, --外部表没有表空间
NULL CLUSTER_NAME,
NULL IOT_NAME, --外部表没有索引,参照IOT_TYPE恒为NULL
DECODE(O3.VALID,'Y','VALID','UNUSABLE') STATUS,
CAST(NULL AS NUMBER) PCT_FREE,
CAST(NULL AS NUMBER) PCT_USED,
CAST(NULL AS NUMBER) INI_TRANS,
CAST(NULL AS NUMBER) MAX_TRANS,
CAST(NULL AS NUMBER) INITIAL_EXTENT,
CAST(NULL AS NUMBER) NEXT_EXTENT,
CAST(NULL AS NUMBER) MIN_EXTENTS,
CAST(NULL AS NUMBER) MAX_EXTENTS,
CAST(NULL AS NUMBER) PCT_INCREASE,
CAST(NULL AS NUMBER) FREELISTS,
CAST(NULL AS NUMBER) FREELIST_GROUPS,
NULL LOGGING,
NULL BACKED_UP,
CAST(NULL AS NUMBER) NUM_ROWS, --外部表不支持统计
CAST(NULL AS NUMBER) BLOCKS,
CAST(NULL AS NUMBER) EMPTY_BLOCKS,
CAST(NULL AS NUMBER) AVG_SPACE,
CAST(NULL AS NUMBER) CHAIN_CNT,
CAST(NULL AS NUMBER) AVG_ROW_LEN,
CAST(NULL AS NUMBER) AVG_SPACE_FREELIST_BLOCKS,
CAST(NULL AS NUMBER) NUM_FREELIST_BLOCKS,
NULL DEGREE,
NULL INSTANCES,
NULL CACHE,
'ENABLED' TABLE_LOCK,
CAST(NULL AS NUMBER) SAMPLE_SIZE, --外部表不支持统计
CAST(NULL AS DATE) LAST_ANALYZED,
'NO' PARTITIONED, --外部表不支持分区
NULL IOT_TYPE, --外部表没有索引
'N' TEMPORARY, --外部表不能为临时表
NULL SECONDARY,
NULL NESTED,
NULL BUFFER_POOL,
CAST(NULL AS VARCHAR(7)) FLASH_CACHE,
CAST(NULL AS VARCHAR(7)) CELL_FLASH_CACHE,
'DISABLED' ROW_MOVEMENT,
'YES' GLOBAL_STATS,
'NO' USER_STATS,
NULL DURATION, --外部表不能为临时表
NULL SKIP_CORRUPT,
NULL MONITORING,
NULL CLUSTER_OWNER,
NULL DEPENDENCIES,
'DISABLED' COMPRESSION, --外部表不支持压缩
'BASIC' COMPRESS_FOR, --外部表不支持压缩
NULL DROPPED,
NULL READ_ONLY,
CAST(NULL AS VARCHAR(3)) SEGMENT_CREATED,
CAST(NULL AS VARCHAR(7)) RESULT_CACHE,
'DISABLED' LONG_ROW --外部表不支持LONG ROW
FROM
(SELECT ID, NAME, PID FROM SYS.SYSOBJECTS WHERE TYPE$ = 'SCH') O2
JOIN (SELECT ID, NAME, SCHID, VALID FROM SYS.SYSOBJECTS WHERE TYPE$ = 'SCHOBJ' AND SUBTYPE$ = 'UTAB' AND INFO3&0X3F = 0x0D) O3 ON O3.SCHID = O2.ID
WHERE
O2.PID = UID();
收到,我们会尽快修复。
已修复,到官网下载最新版本更新再试试。