테이블 타입관리 에러 해결
This commit is contained in:
parent
def192641b
commit
0d1b5869c5
|
|
@ -22,7 +22,7 @@ export class TableManagementService {
|
|||
logger.info("테이블 목록 조회 시작");
|
||||
|
||||
// information_schema는 여전히 $queryRaw 사용
|
||||
const tables = await prisma.$queryRaw<TableInfo[]>`
|
||||
const rawTables = await prisma.$queryRaw<any[]>`
|
||||
SELECT
|
||||
t.table_name as "tableName",
|
||||
COALESCE(tl.table_label, t.table_name) as "displayName",
|
||||
|
|
@ -38,6 +38,12 @@ export class TableManagementService {
|
|||
ORDER BY t.table_name
|
||||
`;
|
||||
|
||||
// BigInt를 Number로 변환하여 JSON 직렬화 문제 해결
|
||||
const tables: TableInfo[] = rawTables.map((table) => ({
|
||||
...table,
|
||||
columnCount: Number(table.columnCount), // BigInt → Number 변환
|
||||
}));
|
||||
|
||||
logger.info(`테이블 목록 조회 완료: ${tables.length}개`);
|
||||
return tables;
|
||||
} catch (error) {
|
||||
|
|
@ -57,7 +63,7 @@ export class TableManagementService {
|
|||
logger.info(`컬럼 정보 조회 시작: ${tableName}`);
|
||||
|
||||
// information_schema는 여전히 $queryRaw 사용
|
||||
const columns = await prisma.$queryRaw<ColumnTypeInfo[]>`
|
||||
const rawColumns = await prisma.$queryRaw<any[]>`
|
||||
SELECT
|
||||
c.column_name as "columnName",
|
||||
COALESCE(cl.column_label, c.column_name) as "displayName",
|
||||
|
|
@ -82,6 +88,17 @@ export class TableManagementService {
|
|||
ORDER BY c.ordinal_position
|
||||
`;
|
||||
|
||||
// BigInt를 Number로 변환하여 JSON 직렬화 문제 해결
|
||||
const columns: ColumnTypeInfo[] = rawColumns.map((column) => ({
|
||||
...column,
|
||||
maxLength: column.maxLength ? Number(column.maxLength) : null,
|
||||
numericPrecision: column.numericPrecision
|
||||
? Number(column.numericPrecision)
|
||||
: null,
|
||||
numericScale: column.numericScale ? Number(column.numericScale) : null,
|
||||
displayOrder: column.displayOrder ? Number(column.displayOrder) : null,
|
||||
}));
|
||||
|
||||
logger.info(`컬럼 정보 조회 완료: ${tableName}, ${columns.length}개`);
|
||||
return columns;
|
||||
} catch (error) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue