Troubles connection to mariadb

hi everyone, i cant connect to my database wich is on mariadb...
connection is ok with heidi, but i have an error using toad data point and I cant figure out...
could someone help me??

Object cannot be cast from DBNull to other types.
Stack Trace:
at System.DBNull.System.IConvertible.ToInt32(IFormatProvider provider)
at MySql.Data.MySqlClient.Driver.LoadCharacterSets(MySqlConnection connection)
at MySql.Data.MySqlClient.Driver.Configure(MySqlConnection connection)
at MySql.Data.MySqlClient.MySqlConnection.Open()
at Quest.Toad.MySQL.MySQLConnection.OpenInitialTestConnection()
at Quest.Toad.MySQL.MySQLConnection.DoBeforeConnect()
at Quest.Toad.Db.Connection.Connect(Boolean notify)
at Quest.Toad.Db.Provider.BackgroundConnector.CreateBackgroundConnection()

Welcome to the TDP community here at ToadWorld, David.

For issues like this, involving stack traces, it's always best to create a Quest support ticket.

Having said that, are you trying to connect to the database using TDP's MariaDB connector (preferred), or the MySQL connector?

Both of them...

-------- Message d'origine --------

OK... if you're getting an error message using either of the connectors, and you're sure that the credentials for connection are valid, best to open up a Support Ticket so that Quest engineers can troubleshoot.

The error message "Object cannot be cast from DBNull to other types" means that Toad for MySQL is trying to cast a value that is null to another type. This can happen if the database server returns a null value for a column that is not nullable.

In the case of your problem, Toad for MySQL is trying to connect to a server that is running a new feature called "strict mode". When strict mode is enabled, the database server will return null values for columns that are not nullable.

Toad for MySQL v does not support strict mode. This is why Toad is trying to cast a null value to another type, and is getting the error message "Object cannot be cast from DBNull to other types".

There are two solutions to this problem:

1 Update Toad for MySQL to a version that supports strict mode (that would be Quest).
2 Disable strict mode on the DB server (good luck with that).

I just ran into the same issue. I believe this StackOverflow post might offer all the needed information for Quest to fix the issue on their end.

tldr: MariaDB allows null values for certain fields that used to be non-nullable.. It seems the recommended "fix" is to switch from using MySql.Data.MySqlClient to using MySqlConnector.

It looks like the issue started in MariaDB version 10.10, so using 10.9 can be a workaround until this is resolved on Quest's side.

Hi everyone - we have added this defect to our backlog. We cannot commit to a date yet for the fix. We do have a release planned for December (version 6.2) but engineering has not confirmed yet if this will be in this release.

For a workaround, you should be able to connect using the "ODBC Generic" connector and specifying the ODBC driver specifically.