mysql .net - 如何使用 .net 连接器在 mysql 中更改 SQL 模式
mysql .net - how to change SQL mode in mysql using .net connector
在 MySQL Workbench 中,我们有一些 SQL 会话模式,例如 'allow_invalid_dates'、'traditional' 等
例如。
set session sql_mode = 'allow_invalid_dates'
我正在为 MySQL 使用 .net 连接器。那么,我如何使用该提供程序设置这些模式?有什么方法可以设置 SQL 模式吗?
如评论中所述,像发送任何其他查询一样发送查询将为当前会话设置 sqlmode。
using (MySqlConnection conn = new MySqlConnection(connectionstring))
{
conn.Open();
using (MySqlCommand cmd = new MySqlCommand("set session sql_mode = 'allow_invalid_dates'", connection))
{
cmd.executeNonQuery();
}
//add here any query you want using the new sqlmode
}
Johan 的回答很有用。我认为如果你想在整个应用程序中做同样的事情,你不需要每次打开连接后都运行它。
在连接字符串中设置此项将使它像 Johan 的回答一样工作。供参考,请参阅此 https://dev.mysql.com/doc/connector-net/en/connector-net-programming-datetime-invalid.html
在 MySQL Workbench 中,我们有一些 SQL 会话模式,例如 'allow_invalid_dates'、'traditional' 等
例如。
set session sql_mode = 'allow_invalid_dates'
我正在为 MySQL 使用 .net 连接器。那么,我如何使用该提供程序设置这些模式?有什么方法可以设置 SQL 模式吗?
如评论中所述,像发送任何其他查询一样发送查询将为当前会话设置 sqlmode。
using (MySqlConnection conn = new MySqlConnection(connectionstring))
{
conn.Open();
using (MySqlCommand cmd = new MySqlCommand("set session sql_mode = 'allow_invalid_dates'", connection))
{
cmd.executeNonQuery();
}
//add here any query you want using the new sqlmode
}
Johan 的回答很有用。我认为如果你想在整个应用程序中做同样的事情,你不需要每次打开连接后都运行它。
在连接字符串中设置此项将使它像 Johan 的回答一样工作。供参考,请参阅此 https://dev.mysql.com/doc/connector-net/en/connector-net-programming-datetime-invalid.html