Mysql、SqlServer、Oracle、Db2、PostGreSql、GreenPlum 含有单引号、双引号、封闭符、转义符
- 建的表含有单引号、列含有单引号如下
Mysql
当mysql查询语句字段为mysql特殊符号时候,或者出现单双引号的情况的时候,使用Mysql的封闭符号加上封闭符号后问题解决。
查询的列含有单引号
- 加上
Mysql
的封闭符号
select `'rewrwe'rwqre'rewq'_'` from `'fdsa'_'fdsa_'`
查询的列含有双引号
- 加上
Mysql
的封闭符号
select `"name"_"a"` from `"dsds"a_"dasd"`
表名含有单、双引号
- 加上
Mysql
的封闭符号
select * from `'fdsa'_'fdsa_'`;
select * from `"dsds"a_"dasd"`;
Where条件中含有单引号
- 使用转义符,两个单引号代表一个单引号:例如name的实际值是
'a'b_'c'
select `'rewrwe'rwqre'rewq'_'`,`name` from `'fdsa'_'fdsa_'` where `name`='''a''b_''c'''
Oracle
查询的列含有单引号
- 加上封闭符号
select "li'si'" from t1;
查询的列含有双引号
表名含有单、双引号
- 加上封闭符号:表名称为
a'b'_'c'
select name from "a'b'_'c'"
Where条件中含有单引号
- 用转义符:查找name=
'zh'angs'an
的数据。
select name from test1 where name='''zh''angs''an';
Db2
查询的列含有单引号
- 加上封闭符号
select "'name'_'a'_'" from tabletest;
查询的列含有双引号
表名含有单、双引号
- 加上封闭符号:表名称为
a'b'_'c'
select name from "a'b'_'c'"
Where条件中含有单引号
- 用转义符:查找name=
'zh'angs'an
的数据。
select name from test1 where name='''zh''angs''an';
PostGreSql
查询的列含有单引号
- 加上封闭符号
select "'name'_'a'_'" from tabletest;
查询的列含有双引号
- 加上封闭符号并且使用转义符号:两个双引号代表一个双引号
select """a_""_b""" from test1;
表名含有单、双引号
- 加上封闭符号:表名称为
a'b'_'c'
select name from "a'b'_'c'";
select * from """a""_b""_c"""; # 表名含有双引号
Where条件中含有单引号
- 加上封闭符号:两个单引号代表一个单引号,字段的值最外面用单引号括起来
select "'rewrwe'rwqre'rewq'_'",name from "a'b'_'c'" where "'rewrwe'rwqre'rewq'_'"='''rewrwe''rwqre''rewq''_'''
Where条件中含有双引号
- 直接查询不用处理
select * from test where name='"b_"f_"';
GreenPlum
查询的列含有单引号
- 加上封闭符号
select "'name'_'a'_'" from tabletest;
查询的列含有双引号
- 加上封闭符号并且使用转义符号:两个双引号代表一个双引号
select """a_""_b""" from test1;
表名含有单、双引号
- 加上封闭符号:表名称为
a'b'_'c'
select name from "a'b'_'c'";
select * from """a""_b""_c"""; # 表名含有双引号
Where条件中含有单引号
- 加上封闭符号:两个单引号代表一个单引号,字段的值最外面用单引号括起来
select "'rewrwe'rwqre'rewq'_'",name from "a'b'_'c'" where "'rewrwe'rwqre'rewq'_'"='''rewrwe''rwqre''rewq''_''';
Where条件中含有双引号
- 直接查询不用处理
select * from test where name='"b_"f_"';