Our software has been developed to support both MS SQL Server & ORACLE depending on the client using the software. With PowerServer 2020 we had both SQL Server and ORACLE set up in our configuration (Database Type section) so the output would support either DBMS. This solution had served us well for years.
Since beginning our migration to PS 2022 we have been focused on MSSQL, but we have noticed several syntax and object errors in the Errors tab after deployment. We've assumed this is the case since we have not setup an ORACLE DB on the Database page of the PS Project.
Upon inspection the Database page of the PS project, it has not been obvious how to utilize this to support both DBMS.
Can a PowerServer support both DBMS at the same time in the same project (possibly the DB connection profile) or do we need to create 2 separate projects? If it can be done within one project, can you provide some guidance on how this can be accomplished.
Regards,
Mike
I agree ... You can see those aspects in my latest STD Framework and in particular, the OrderEntry Demo App. In this latest release, I modified the Demo App to work with SQL Anywhere, PostGreSQL, & SQL Server concurrently as the PB Demo DB is now available in those 3 DBMS variations.
So when you compile an PS App though against SA but run it against SS or PG you get "some" SQL errors here & there. The errors also vary by DBMS in different places within the App
However, if you run the Demo App in C/S or PowerClient mode, then all the DWO's DML execution work OK as the DWO's adjust the SQL generated at runtime. Something that PS does not do.
So I would agree with your assessment that you need a PS App deployment per DBMS to ensure DML compliance with the corresponding Web APIs per DBMS.
Regards.. Chris
I know we have potential date v datetime datatype issues, so the C# model generation did concern.
As far are as the "Set as Current" option goes, I'm not sure I understand why it is not better than using 2 projects. Is this due to both deployments placing the C# solutions to the same location? Or is there some other fallback I'm missing.
- Mike
- Mike
Yes. The C# model will be saved in the same location. Each time you change the "Set as Current" option (e.g.: from SQL Server profile to Oracle profile), you have to Build and Deploy again to generate the correct C# model for this database. It will cost more time in this process. So I suggest that you create two separate PowerServer projects and make sure they are not using the same C# solution.
Regards, Logan