如何通过连接字符串为.NET应用的Snowflake事务设置lock_timeout
Snowflake .NET 驱动事务锁超时配置方案
可以调整事务锁等待超时时间,但你当前使用的Lock_timeout不是Snowflake .NET驱动连接字符串的合法参数,因此不会生效。以下是两种可行的配置方式:
方式一:会话初始化时执行SQL语句
在连接打开后,立即执行会话级别的参数设置SQL,该配置会在当前连接有效期内生效:ALTER SESSION SET LOCK_TIMEOUT = 300000; -- 5分钟,单位为毫秒方式二:通过驱动SessionParameters属性配置
直接在SnowflakeDbConnection对象中添加会话参数,无需额外执行SQL:var connectionString = "你的Snowflake基础连接字符串"; using var connection = new SnowflakeDbConnection(); connection.ConnectionString = connectionString; // 设置锁超时为5分钟(300000毫秒) connection.SessionParameters.Add("LOCK_TIMEOUT", "300000"); connection.Open();
注意:Snowflake的LOCK_TIMEOUT参数单位为毫秒,5分钟需换算为300000毫秒;该参数为会话级别,仅对当前连接的事务生效,每次新建连接都需要重新配置。
内容的提问来源于stack exchange,提问作者Archana Chaudhary
相关产品推荐
相关产品推荐

