Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
277 views
in Technique[技术] by (71.8m points)

node.js - Node mssql to pg stored procedure / function conversion

I have a working SQL Server stored procedure (using the mssql package):

public async callSpiAlarmHistory(spData: spiAlarmHistory): Promise<IProcedureResult<any>> {
    try {
        return await this.connPool.request()
            .input("StationID", TYPES.Int, spData.StationID)
            .input("CreateDate", TYPES.DateTime, spData.CreateDate)
            .input("Level", TYPES.Int, spData.Level)
            .input("Description", TYPES.VarChar, spData.Description)
            .input("Solution", TYPES.VarChar, spData.Solution)
            .execute("spiAlarmHistory");
    } catch (error) {
        console.error(error);
        throw new Error(error);
    }
}

I want to convert this to a PostgreSQL function call. I don't know if pg-types can help me or not. I know that this way will work, I was just wondering if there was someway to keep the type conversion like in SQL Server:

public async callSpiAlarmHistory(spData: spiAlarmHistory): Promise < QueryResult < any >> {
    try {
        const CreateDate = spData.CreateDate.toISOString().replace(/T/, ' ').replace(/..+/, '') 

        return await this.connPool.query(
            `select  spiAlarmHistory (` +
            spData.StationID + `,` +
            `'` + CreateDate + `', ` +
            spData.Level + `,` +
            `'` + spData.Description + `',` +
            `'` + spData.Solution + `' )`
        );
    } catch(error) {
        console.error(error);
        throw new Error(error);
    }
}

I much rather prefer the cleaner SQL Server stored procedure call. I found this list of SQL Server to PostgreSQL type mapping online.

question from:https://stackoverflow.com/questions/65943750/node-mssql-to-pg-stored-procedure-function-conversion

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
Waitting for answers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...