sql什么時候用單引號 在mysql語句中為什么要加反引號?
在mysql語句中為什么要加反引號?它是為了區(qū)分MYSQL的保留字與普通字符而引入的符號。舉個例子:SELECT `select` FROM `test` WHERE select=‘字段值‘在tes
在mysql語句中為什么要加反引號?
它是為了區(qū)分MYSQL的保留字與普通字符而引入的符號。舉個例子:SELECT `select` FROM `test` WHERE select=‘字段值‘在test表中,有個select字段,如果不用反引號,MYSQL將把select視為保留字而導(dǎo)致出錯,所以,有MYSQL保留字作為字段的,必須加上反引號來區(qū)分。引號一般用在字段的值,如果字段值是字符或字符串,則要加引號,如:select=‘字段值‘不加反引號建的表不能包含MYSQL保留字,否則出錯
Oracle數(shù)據(jù)庫查詢時Where后面的條件能把數(shù)值類型的數(shù)據(jù)用單引號引起來查詢么?
oracle中
如果是number類型的話,象你上邊那種,會默認(rèn)的把帶引號的轉(zhuǎn)成數(shù)字再進(jìn)行查詢,也就是說和你不帶引號是一樣的
同樣,如果是字符類型,這一列保存的都是數(shù)字(注意,是這列),那么你不帶引號的數(shù)字也會被oracle默認(rèn)轉(zhuǎn)成字符類型。
但是有種情況例外,給你做個例子
create table test
(id varchar2(10))
insert into test values ("100")
insert into test values ("1000")
select * from test where id=100
select * from test where id="100"這個時候,以上兩種查詢方式都沒問題,如果此時再插入一條數(shù)據(jù),如下
insert into test values ("1000a")這個時候你再用上邊那兩個select,其中第一個就會報錯了,其實(shí)就是oracle會默認(rèn)轉(zhuǎn)化的關(guān)系