回答編集履歴

2

追記&訂正

2020/07/01 01:33

投稿

退会済みユーザー
test CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
 
4
4
 
5
- 書かれているコードを見ると、パラメータ化の有無が結果の違いになっていて(1 番最初だけがパラメータ化クエリ)の違いが結果に表れているように思えます。
5
+ 書かれているコードを見ると、パラメータ化の有無(1 番最初だけがパラメータ化クエリ)の違いが結果に表れているように思えます。
6
6
 
7
7
 
8
8
 
9
- ただ、見た感じではパラメータ化してない 2 番目、3 番目でもよさそうで、なぜ結果に違いが出るのかは分かりませんが。(ただ、2 番目、3 番目は double.MinValue がクエリに文字列として埋め込まれていてそこが SQLite でどう解釈されるのか怪しい感じがします。1 番目は double.MinValue の値が生でパラメータに渡されていて間違う余地がなさそうだと思います
9
+ ただ、見た感じではパラメータ化してない 2 番目、3 番目でもよさそうで、なぜ結果に違いが出るのかは分かりませんが。(強いて言うと、2 番目、3 番目は double.MinValue がクエリに文字列として埋め込まれていてそこが SQLite でどう解釈されるのか怪しい感じがします。1 番目は double.MinValue の値が生でパラメータに渡されていて間違う余地がなさそうだと思います)
10
10
 
11
11
 
12
12
 

1

追記&訂正

2020/07/01 01:33

投稿

退会済みユーザー
test CHANGED
@@ -2,15 +2,15 @@
2
2
 
3
3
 
4
4
 
5
- 書かれているコードを見ると、パラメータ化の有無が結果の違いになっていて(番最初だけがパラメータ化クエリ)その違いが結果に表れているように思えます。
5
+ 書かれているコードを見ると、パラメータ化の有無が結果の違いになっていて(1 番最初だけがパラメータ化クエリ)その違いが結果に表れているように思えます。
6
6
 
7
7
 
8
8
 
9
- ただ、パラメータ化してない 2 番目、3 番目でもよさそうな感じで、なぜ結果に違いが出るのかは分かりませんが。
9
+ ただ、見た感じではパラメータ化してない 2 番目、3 番目でもよさそうで、なぜ結果に違いが出るのかは分かりませんが。(ただ、2 番目、3 番目は double.MinValue がクエリに文字列として埋め込まれていてそこが SQLite でどう解釈されるのか怪しい感じがします。1 番目は double.MinValue の値が生でパラメータに渡されていて間違う余地がなさそうだと思いますが)
10
10
 
11
11
 
12
12
 
13
- SQL Server ではパラメータ化クエリは sp_executesql に変換されて実行されます。SQLite でもそのような違いがあって、それが結果の違いになっているのかも。
13
+ SQL Server ではパラメータ化クエリは sp_executesql に変換されて実行されます。SQLite でもそのような違いがあって、それが結果の違いになっているのかも。(想像です。でも、結果からは、1 番目のパラメータ化クエリと 2, 3 番目のアドホッククエリとでは何か内部での扱いが違うのは間違いなさそうに見えます)
14
14
 
15
15
 
16
16