teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

脱字修正

2021/01/30 10:13

投稿

YT0014
YT0014

スコア1819

answer CHANGED
@@ -1,4 +1,4 @@
1
- SQLでは、'~'のように「'」で前後を囲まれた表記は、リテラルの一です。
1
+ SQLでは、'~'のように「'」で前後を囲まれた表記は、リテラルの一形式です。
2
2
 
3
3
  [リテラルとは](https://tech.pjin.jp/blog/2020/10/30/%E3%80%90sql%E5%85%A5%E9%96%80%E3%80%91%E3%83%AA%E3%83%86%E3%83%A9%E3%83%AB%E3%81%A8%E3%81%AF/)
4
4
 

1

リテラルに対する指摘への対応

2021/01/30 10:13

投稿

YT0014
YT0014

スコア1819

answer CHANGED
@@ -1,8 +1,8 @@
1
- SQLでは、'~'のように「'」で前後を囲まれた部分をリテラルと言います。
1
+ SQLでは、'~'のように「'」で前後を囲まれた表記は、リテラルの一です。
2
2
 
3
3
  [リテラルとは](https://tech.pjin.jp/blog/2020/10/30/%E3%80%90sql%E5%85%A5%E9%96%80%E3%80%91%E3%83%AA%E3%83%86%E3%83%A9%E3%83%AB%E3%81%A8%E3%81%AF/)
4
4
 
5
- このリテラルを使う際は、「'」が前後の組になっている必要があります。
5
+ この形式のリテラルを使う際は、「'」が前後の組になっている必要があります。
6
6
 
7
7
  > AND password='' or 1 = 1'
8
8
  ↑これだとだめなのでしょうか?
@@ -10,7 +10,7 @@
10
10
  上記の場合、SQLは、以下となります。
11
11
  SELECT * FROM honkaku_users WHERE login_id='dummy' AND password='' or 1 = 1'
12
12
 
13
- このSQL文の中のリテラルは、'dummy'と''の2つで、文末に組になっていない'が残り、構文エラーとなって、SQLが実行されません。
13
+ このSQL文の中の'形式のリテラルは、'dummy'と''の2つで、文末に組になっていない'が残り、構文エラーとなって、SQLが実行されません。
14
14
 
15
15
  この例の目的は、'を含んだパスワードを指定することで、本来ならレコードが存在せずに、パスワードエラーになるのを回避することにあるので、SQLエラーになっては、目的を達成できず、無意味になります。
16
16