近段時(shí)間在做一個(gè)asp的項(xiàng)目,由于數(shù)據(jù)庫(kù)里面的字段采用字母“h”開頭,在sql語言時(shí)就出現(xiàn)了莫名其妙的錯(cuò)誤,經(jīng)過反復(fù)的檢查,也沒查出有錯(cuò)誤的地方,整整給折騰了我一天的時(shí)間。
原來在vbscript語句中“&H”專用于16進(jìn)制數(shù)表示的。在使用“&”這個(gè)符號(hào)用于字串連接時(shí),應(yīng)該在兩側(cè)加上一個(gè)空格,雖然不加空格在多數(shù)情況下運(yùn)行是正常的,但那是不正確的或不規(guī)范的寫法。在出現(xiàn)以字母“h”開頭的字段時(shí),如有這樣的語句:
sql = "insert into Student(xxx,xxx) values('"&htitle&"','"&hname&"')"
則會(huì)出現(xiàn)“語句未結(jié)束”的錯(cuò)誤。以上sql語句看上去沒有任何的語法錯(cuò)誤,往往令人不知所措。