1. John Niespodzianski
  2. PowerBuilder
  3. Saturday, 21 October 2023 19:41 PM UTC

Hello everyone,

A question for all.  I have a PB 2022 application that connected successfully to a SQL Server web database via ADO.NET.

When I upgraded to R2, that connection stopped working.  Thanks to this forum, I was able to make changes to the connect string & have it connect successfully.

However, the deployed EXE does not.  After digging, it looks like the new SQL Server connection requires the .NET 6  SDK.

If true, this is very disappointing. Many of my users aren't tech savvy, so asking them to install the .NET 6 SDK or the SQL Server Client usually results in a lot of pain... for them and me. :)

With all that said, my question:

Is there a way to connect to a SQL Server database without installing any 3rd party/vendor DB software?  If so, what is the preferred/recommended driver?  In reading it sounds like the MS OLE DB SQL Server driver also requires an extra install on the client.

My hope is to deploy the required runtime files with the app so it works "out of the box".  I've been doing thins prior to 2022 R2 successfully, and feel it's a step backwards if that can no longer be done.

Thanks!

John

 

Roland Smith Accepted Answer Pending Moderation
  1. Monday, 23 October 2023 15:35 PM UTC
  2. PowerBuilder
  3. # 1

The PowerBuilder database driver connects to the vendor's client software, not the server directly. The only way to avoid installing the DB client software is to turn all database interactions into web services or run the app via RemoteApp (Remote Desktop) or Citrix.

Comment
There are no comments made yet.
Armeen Mazda @Appeon Accepted Answer Pending Moderation
  1. Monday, 23 October 2023 10:42 AM UTC
  2. PowerBuilder
  3. # 2

Deploying as PowerServer project is cloud-native architecture so no DB software needs to be installed on the users machine.  But PowerServer requires additional license not free.  With that said, many Citrix/VDI customers switching over because PowerServer much more scalable, secure, and lower licensing costs.

Comment
There are no comments made yet.
mike S Accepted Answer Pending Moderation
  1. Sunday, 22 October 2023 21:36 PM UTC
  2. PowerBuilder
  3. # 3

microsoft still includes OLEDB for sql server (this is the older version of MSOLEDB) - at least up to windows 10.

I have not checked whether windows 11 has it, can't see why they would get rid of it, but then i can't see why they don't include MSOLEDB as part of windows.

It you don't use any of the newer sql server features, then you can use OLEDB without installing anything.  Our application still offers the old OLEDB as an option for connecting to sql server.  

 

 

 

Comment
There are no comments made yet.
John Niespodzianski Accepted Answer Pending Moderation
  1. Sunday, 22 October 2023 14:10 PM UTC
  2. PowerBuilder
  3. # 4

Hi Chris,

I did test with this driver as well, but it still requires a 3rd party install to work (unless I'm missing something).

It is a lighter weight install vs. the .NET 6 Windows Desktop Runtime, so that is a bonus.

Unless there's any way to connect w/o a 3rd party install, I'll likely add the auto-install of the MSO as part of the Inno app installer just to make the deployment self-contained.

John

Comment
  1. Chris Pollach @Appeon
  2. Sunday, 22 October 2023 16:22 PM UTC
Correct ... A production PS implementation would require a server license cost.
  1. Helpful
  1. Miguel Leeuwe
  2. Monday, 23 October 2023 09:21 AM UTC
And if I'm not mistaken, when you want to have different db users instead of only one, that would be a license for each one of them. Anyway, the minimum of users you pay for is 150. It would be nice if this could be scaled to less users. For bigger companies, I don't think those costs are too big, but we also deal with smaller companies. It would double our customers' costs to run our applications, not a very good sales point.
  1. Helpful
  1. Francisco Martinez @Appeon
  2. Monday, 23 October 2023 14:41 PM UTC
Hi Miguel,



The PS license only limits the amount of users that concurrently connect to the Web API. If you want to use dynamic DB connection so as to be able to connect with different DB users that's up to you (see here https://docs.appeon.com/ps2022/Using_LogID_and_LogPass_properties2.html)



Regards - Francisco
  1. Helpful
There are no comments made yet.
Chris Pollach @Appeon Accepted Answer Pending Moderation
  1. Saturday, 21 October 2023 21:26 PM UTC
  2. PowerBuilder
  3. # 5

Hi John;

  I would recommend looking at using a native DB Client driver like MSOLEDBSQL for SQL Server. This is now Microsoft's current and recommended SS client going forward and one that the latest PB versions also support ( ie: SQLCA.DBMS = "MSO" )

  The answer for your required DB Client installation is ...

Yes - If you continue to deploy your Apps in a Client/Server model

No - If you use PB's new PowerServer App model in the CloudPro edition of the PB IDE.

Regards ... Chris

Comment
There are no comments made yet.
  • Page :
  • 1


There are no replies made for this question yet.
However, you are not allowed to reply to this question.