typescript postgres@3.x jsonb数据插入绕过类型检测错误问题
typescript postgres插入数据时,如果用JSON.stringify(metadata)插入数据会直接插入json字符串数据,查询和分组处理数据多了一层json字符串数据,如果直接insert metadata编辑器typescript检测 又会报错No overload matches this call.
Argument of type '[number, { bedtime: string; ... }]' is not assignable to parameter of type 'never'.
采用以下写法可以绕过typescript类型检测保存jsonb数据:
await sql`INSERT INTO user (metadata)VALUES ${JSON.parse(JSON.stringify(metadata))}::jsonb)`;