① 問一個關於asp sql的單引號雙引號的問題
sql="UPDATE student SET"
sql=sql & "姓名=' "& sname &" ', "
sql=sql & "性別=' "& ssex &" ', "
sql=sql & "民族=' "& snation &" ', "
sql=sql & "班號=' "& sclass &" ' "
sql=sql & "where 學號=' "& sno &" ' "
conn.execute sql
如果某個欄位是數字型 則取消兩邊的單引號
比如學號欄位是數字型 則上面修改為
sql=sql & "where 學號= "& sno &" " 或者 sql=sql & "where 學號= "& sno
你用的時候取消空格就OK 了
② csv文件導入SQL後就成這樣了,怎麼去掉等於號和雙引號呢
把文本拷貝出來,把雙引號替換掉
③ sql語句引號用法 資料庫中引號的用法
1、首先先來說一下單引號和反引號,這里的 '圖書ID' 就使用到了單引號,而
2、CREATE TABLE `book` 這里的 book 就使用到了反引號。
3、單引號:在例子中的條件值周圍使用的是單引號。SQL 使用單引號來環繞文本值。如果是數值,請不要使用引號。按照別的說法來說就是Varchar類型(也可以說是String、字元串類型)這一些在資料庫語句中使用的時候應該使用單引號,而不是直接使用。而對於數值類型的,反而是不能使用單引號。
4、反引號:它是為了區分MYSQL的保留字與普通字元而引入的符號。
5、注意劃重點:有MYSQL保留字作為欄位的,必須加上反引號來區分!
6、雙引號的用法和單引號有所類似,大多數資料庫都支持單引號和雙引號的互換,即varchar類型的變數既可以用單引號來囊括,也可以用雙引號。當然了,一邊單引號,一邊雙引號是不被允許的。
7、另外,在oracle裡面,雙引號還有一個意義,那就是保留大小寫。在oracle資料庫裡面,所有的欄位是默認為轉化成大寫後進資料庫的,所以如果有一個表名為user,這個時候select * from user;這個語句是查不出任何數據的!(明明創建了表,也會提示表不存在的錯誤)只有select * from 「user」才可以,因為上面的語句會默認轉化為大寫。
8、字元串用單引號;表名,欄位名等用反引號;大小寫沖突用雙引號。
④ SQL中什麼情況下用引號
在標准sql中,引號的使用
請注意,我們在例子中的條件值周圍使用的是單引號。SQL 使用單引號來環繞文本值(大部分資料庫系統也接受雙引號)。如果是數值,請不要使用引號。文本值:
這是正確的:SELECT * FROM Persons WHERE FirstName='Bush' 這是錯誤的:SELECT * FROM Persons WHERE FirstName=Bush 數值:
這是正確的:SELECT * FROM Persons WHERE Year>1965 這是錯誤的:SELECT * FROM Persons WHERE Year>'1965' 「單引號和雙引號之間的區別最早在SQL92標准中引入的。對於標識符,這個標准區分了常規標識符和分隔的標識符。兩者主要的區別在於:分隔的標識符被括在雙引號中(Transact-SQL也支持方括弧的使用:[標識符])並且是區分大小寫的。單引號只用於字元串的定界。總的來說,引入分隔的標識符是為了對標識符進行規范,否則就會與保留字相同了。特別要提到的是,分隔的標識符能夠使你在命名(標識符或變數的名字)的時候,免於使用在將來的SQL標准中可能出現的保留字。另外,分隔的標識符能夠包含一些在通常的標識符名稱中被視為不合法的字元,如空格。
在SQL SERVER中,雙引號的使用由SET 語句中的QUOTED_IDENTIFIER選項來定義。如果這個選項被設為ON,則雙引號中的標識符將被定義為一個分隔的標識符。在這種情況下,雙引號不能被用於定界字元串。」
當 QUOTED_IDENTIFIER 為 ON 時,對於 SQL 語句中的雙引號和單引號 (') 的使用,SQL Server 遵循 SQL-92 規則:
雙引號只能用於分隔標識符,不能用於分隔字元串。
為保持與現有應用程序的兼容性,SQL Server 並不完全強制該規則。如果字元串沒有超過標識符的長度,則該字元串可包含在雙引號內。但不建議這樣做。
單引號必須用來包含字元串,不能用於分隔標識符。
如果字元串包含單引號,則需要在單引號前再增加一個單引號:
SELECT * FROM "My Table"
WHERE "Last Name" = 'O''Brien'
當 QUOTED_IDENTIFIER 為 OFF 時,對於雙引號和單引號的使用,SQL Server 遵循如下規則:
引號不能用於分隔標識符,而是用括弧作為分隔符。
單引號或雙引號可用於包含字元串。
如果使用雙引號,嵌入的單引號不需要用兩個單引號來表示:
SELECT * FROM [My Table]
WHERE [Last Name] = "O'Brien"
無論 QUOTED_IDENTIFIER 的設置如何,都可以在括弧中使用分隔符。
分隔標識符規則
分隔標識符的格式規則是:
分隔標識符可以包含與常規標識符相同的字元數(1 到 128 個,不包括分隔符字元)。本地臨時表標識符最多可以包含 116 個字元。
標識符的主體可以包含當前代碼頁內字母(分隔符本身除外)的任意組合。例如,分隔符標識符可以包含空格、對常規標識符有效的任何字元以及下列任何字元: 代字型大小 (~) 連字元 (-)
驚嘆號 (!) 左括弧 ({)
百分號 (%) 右括弧 (})
插入號 (^) 撇號 (')
and 號 (&) 句號 (.)
左圓括弧 (() 反斜杠 (\)
右圓括弧 ()) 重音符號 (`) 轉載標識符的概念: 資料庫名是一個標識符,表名也是一個標識符,在SQL SERVER中標識符分為兩類:標識符有兩類:常規標識符符合標識符的格式規則。在 Transact-SQL 語句中使用常規標識符時不用將其分隔。SELECT *FROM TableXWHERE KeyCol = 124
分隔標識符包含在雙引號 (") 或者方括弧 ([ ]) 內。符合標識符格式規則的標識符可以分隔,也可以不分隔。SELECT *FROM [TableX] --Delimiter is optional.WHERE [KeyCol] = 124 --Delimiter is optional.在 Transact-SQL 語句中,對不符合所有標識符規則的標識符必須進行分隔。SELECT *FROM [My Table] --Identifier contains a space and uses a reserved keyword.WHERE [order] = 10 --Identifier is a reserved keyword.常規標識符和分隔標識符包含的字元數必須在 1 到 128 之間。對於本地臨時表,標識符最多可以有 116 個字元。兩者重要的區別:常規標識符必須嚴格遵守命名的規定,而分隔標識符則可以不遵守命名規定,只要用[],""分隔出來就可以。標識符格式:
1、標識符必須是統一碼(Unicode)2.0標准中規定的字元,以及其他一些語言字元。如漢字.
2、標識符後的字元可以是(除條件一)「_」、「@」、「#」、「$」及數字。
3、標識符不允許是Transact-SQL的保留字。
4、標識符內不允許有空格和特殊字元。
另外,某些以特殊符號開頭的標識符在SQLSERVER 中具有特定的含義。如以「@」開頭的標識符表示這是一個局部變數或是一個函數的參數;以#開頭的標識符表示這是一個臨時表或是一存儲過程。以「##」開頭的表示這是一個全局的臨時資料庫對象。Transact-SQL的全局變數以「@@」開頭。標識符最多可以容納128個字元。
⑤ 請問:在sql 2005中導入文本文件時,怎麼去掉雙引號
可以先運行一下字元替換命令,將所有的「"」替換掉,然後再導入
⑥ sql中什麼時候需要用雙引號,什麼時候用單引號
這就要從雙引號和單引號的作用講起:
1,雙引號裡面的欄位會經過編譯器解釋然後再當作HTML代碼輸出,但是單引號裡面的不需要解釋,直接輸出。例如:
$abc='I love u';
echo $abc //結果是:I love u
echo '$abc' //結果是:$abc
echo "$abc" //結果是:I love u
2,所以在對資料庫裡面的SQL語句賦值的時候也要用在雙引號裡面SQL="select a,b,c from ..."
3,但是SQL語句中會有單引號把欄位名引出來
例如:select * from table where user='abc';
這里的SQL語句可以直接寫成SQL="select * from table where user='abc'"
4,但是如果象下面:
$user='abc';
SQL1="select * from table where user=' ".$user." ' ";對比一下
SQL2="select * from table where user=' abc ' "
5,我把單引號和雙引號之間多加了點空格,希望你能看的清楚一點。
也就是把'abc' 替換為 '".$user."'都是在一個單引號裡面的。只是把整個SQL字元串分割了。
SQL1可以分解為以下3個部分
1:"select * from table where user=' "
2:$user
3:" ' "
字元串之間用 . 來連接。
⑦ 求大神 如何去除Oracle資料庫中字元串兩邊的雙引號 和空格
replace 可以
SQL code?
select replace('"657567556"','"','') from al;
trim也行,其中leading 去前面的「,trailing 去後面的」,both去兩邊的「
SQL code?
select trim(both '"' from '"657567556"') from al;
⑧ sql server 如何去除雙引號
update 表 set 登記薄編號=right(登記薄編號,len(登記薄編號)-1) where left(登記薄編號,1)=''''
update 表 set 身份證號=right(身份證號,len(身份證號)-1) where left(身份證號,1)=''''
⑨ sql語句什麼時候用雙引號或者單引號
估計你問的問題是在程序里寫代碼的時候有雙引號和單引號!~
雙引號表示
庫里的欄位是數值型的!~
而單引號是表示字元型的!~
select
*
from
table
where
a="text1.text"
and
b='"
text2.text"'"
⑩ SQL語言中的單引號與雙引號區別
SQL語句中的單引號與雙引號區別和應用
1 連接字元&號:ASP中&號的主要作用是用來連接的,包括:字元串-字元串、字元串-變數、變數-變數等混合連接。
2 單引號':正如學習語文課一樣,繼續放在雙引號中的引號可以採用單引號。
3 雙引號"" :ASP中處在雙引號中的可以是任意的字元、字元串,HTML代碼。
例子:
v代表變數
V對於數字 例子:var1.asp
qSQL=「select * from 股票行情表 where 收盤價>」&V
V對於字元串 例子:var2.asp
qSQL=「select * from 股票行情表 where 股票代號=『」&V&」』」
V對於日期時間 例子:var3.asp
qSQL=「select * from 買賣記錄 where 買賣日期=#」&V&」#」
單引號與雙引號的區別:
雙引號裡面的欄位會經過編譯器解釋,然後再當作HTML代碼輸出;單引號裡面的不需要解釋,直接輸出。也就是說雙引號中的變數會被解析,單引號里的變數不會被解析。
查詢語句中的欄位如果是文本型就要用單引號,數字型(整型)的才不要單引號,簡言之,一個SQL查詢語句用雙引號括起來,裡面的SQL語句中的字元變數用單引號括起來。而Dreamweaver UltraDev 4軟體中自動生成的語句默認都是數字型的,所以會出現錯誤號0x80040E10的提示。
首先要知道,引號是成對出現的.這個就和語文中學到的一樣.引號裡面的是一段字元串,我們把這段看成一個整體.引號外面的是變數,這個也看成一個整體,而變數也必須是在引號外面的,&是連接符,是用來連接兩個整體的
有時候單引號括起來是字元,Sql中 單引號也做轉義字元
雙引號是字元串,char和string
……………………………………………………………………
在SQL語句 雙引號,單引號連用怎麼理解,???
StrSql="select * from usersheet where loginname=' "+Login1.UserName+" ' and userpass=' "+Login1.PassWord+" ' "
就談下邊的這個例子把
問題補充:' "+Login1.UserName+" '
這個里邊的單雙引號怎麼解釋 還有+號 !!
提問者: netswords - 助理 二級
最佳答案
loginname 指的就是一個變數名<與資料庫里的欄位匹配>,
而' "+Login1.UserName+" ' 就是你輸入的值,
假如只有單引號,系統會認為變數就是Login1.UserName,
而這個值是固定的,然而我們需要的是一個變數,所以就得再加一個雙引號,
至於 『+』 就是連接字元串的意思、、
***************8上面的是網上的解釋 ************
**************8下面是我的程序**********************
strSQL1 = "select * from design where "+rbtnField.SelectedValue+" like '%李大線%' ";
strSQL2 = "select * from design where result like '%李大線%' ";
strSQL1 顯示的 結果 select * from design where result like '%李大線%'
strSQL1 顯示的 結果 select * from design where result like '%李大線%'
上面這兩句話這個時候完全相同 ,可以實現查詢。
如果是下面的情況就不一樣了~~~
strSQL1 = "select * from design where ' "+rbtnField.SelectedValue+" ' like '%李大線%' ";
strSQL2 = "select * from design where result like '%李大線%' ";
strSQL1 顯示的 結果 select * from design where 'result' like '%李大線%'
strSQL1 顯示的 結果 select * from design where result like '%李大線%'
SqlCommand mycomm = new SqlCommand("select * from design where "+rbtnField.SelectedValue+" like '%李大線%' ", conn); 這個時候可以完成模糊搜索。。
strSQL1 = " select * from design where "+rbtnField.SelectedValue+ " = ' "+Textkeyword.Text+ " ' ";
strSQL 2= "select * from design where "+rbtnField.SelectedValue+ " = "+Textkeyword.Text+ " "
select * from design where kv = '35'
strSQL1 顯示的 結果 select * from design where kv = '35'
strSQL1 顯示的 結果 select * from design where kv = 35
這個時候的strSQL1和strSQL2是等價的,都可以用於查詢。。
看樣子,至少我的例子中,單引號' '是沒有任何作用的,只有麻煩,以後盡量不用