MSSQL and MYSQL different interpenetration


#1

Hi

I am using Appery.io to connect to MySQL as well as MSSQL.

When I issue the following query…

http://xxxxxxx/rest/xxxx/tbl_Area?sort=Area&filter=Country+Like+"%South+Africa%"
(as you can see, spaces are not encoded with %20 but with +)

However, MySQL does not seem to care about that and it works perfectly.
Unfortunately with MSSQL an error 500 is thrown in the browser

Why would the interpenetration be different for these two. Surely Dreamfactory does the interperatation of the URL and then passes it on to the database, If it accepts it and passes it to MYSQL why would it not do the same for MSSQL.

Is it just passing the URL as is and MSSQL does not know how to handle the + interpenetration of a space?

In addition single quotes are encoded as %27 and MSSQL is expecting the literal value ’ Why is the ’ being encoded and why can MSSQL not interperet the encoding yet MySQL can?

Thank you in advance


#2

On further investigation it seems that compatibily issue is between Dreamfactory and MSSQL. It does not seem like MSSQl can interpret what Dreamfactory is relaying. Conversion or compatibility seems more advanced or mature in MySQL/Dreamfactory??


#3

I spoke to our engineers about this, and they informed me that interpretation completely depends on the consumer of the request, and how they decode (or don’t) query parameters.

We recommend not using “+”.