Ale*_*lec 2 sql t-sql sql-server
我经常在单个脚本中批量测试 SQL 脚本,并在脚本开头声明变量以便在多个查询中使用。
有没有办法声明一个持续时间(例如连接会话长度)的变量,这样我就不必重新声明/硬编码?
单独测试查询时,我要么运行整个脚本直到变量声明,要么临时重新声明我正在测试的部分中的变量,要么临时对变量进行硬编码。
Declare @StartDate as Date = '20220701'
Declare @EndDate as Date = '20220707'
Run Code Online (Sandbox Code Playgroud)
如果您使用的是 SQL Server 2016+,则可以使用session_context。
这为键/值数据对的会话 ( ) 生命周期提供了工作存储@@SPID。
/* set a value */
exec sp_set_session_context 'MyName', 'my value';
/* retrieve a value */
select Session_Context('MyName');
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅文档。
| 归档时间: |
|
| 查看次数: |
371 次 |
| 最近记录: |