有谁知道如何获取ydb-nodejs-sdk中string
类型的表示?也许有一些枚举或方法,但我没有找到任何东西。这是一个简单的例子来说明我的意思。IType
import { Session, TypedData, Types, Ydb, declareType, snakeToCamelCaseConversion, withTypeOptions } from "ydb-sdk";
export type TestModelType = {
id: string;
value: string;
};
@withTypeOptions({namesConversion: snakeToCamelCaseConversion})
export class TestModel extends TypedData implements TestModelType {
@declareType(Types.UTF8)
id: TestModelType['id']
@declareType(Types.UTF8)
value: TestModelType['value']
constructor(fields: TestModelType) {
super(fields);
this.id = fields.id;
this.value = fields.value;
}
}
export async function insertTest(session: Session, model: TestModel) {
const query = `
DECLARE $id AS ${doSomethingToGetFieldType(model.getType('id'))};
DECLARE $value AS ${doSomethingToGetFieldType(model.getType('value'))};
INSERT INTO \`tests\` (\`id\`, \`value\`)
VALUES ($id, $value);
`;
const preparedQuery = await session.prepareQuery(query);
await session.executeQuery(preparedQuery, {
'$id': model.getTypedValue('id'),
'$value': model.getTypedValue('value')
});
}
function doSomethingToGetFieldType(field: Ydb.IType): string {
// How to get the string representation of a type?
// ...
return '';
}