我有一个触发器,当插入数据时会触发存储过程。该过程可以正常工作,但是我需要设置一个条件-我有一个列// MyViewModelTest.kt
@RunWith(RobolectricTestRunner::class)
class MyViewModelTest {
lateinit var viewModel: MyViewModel
@get:Rule
val rule: TestRule = InstantTaskExecutorRule()
@Before
fun init() {
viewModel = MyViewModel(ApplicationProvider.getApplicationContext())
}
@Test
fun testSomething() {
runBlocking {
System.out.println("Called doSomething")
viewModel.doSomething()
}
System.out.println("Getting result value")
val result = viewModel.myLiveData.value
System.out.println("Result value : $result")
assertNotNull(result) // Fails here
}
}
,其格式为“时间”。如果ACCESSEDTIME
少于1分钟并且“ TYPE”列等于“ Exception”,则应执行我的存储过程。我没有收到错误,但是在BEGIN之前使用以下代码时,该过程未执行。
ACCESSEDTIME
答案 0 :(得分:0)
解决方案是将表中的ACCESSEDTIME列转换为日期时间格式,而不是时间格式。然后,无需像本例中的“ ACCESSEDTIME”列上的过程中进行转换。
IF (SELECT COUNT(*)
FROM LOGS
WHERE Logs.TYPE = 'Exception'
AND ACCESSEDTIME > DATEADD(minute, -1, GETDATE())) > 0
BEGIN
-- my stored procedure
END