我輸入分?jǐn)?shù)為93.05時(shí),顯示的是93.0,并沒(méi)有四舍五入啊,如果輸入90.15時(shí),會(huì)顯示91.2,是為什么
學(xué)習(xí)達(dá)人
|
阿嚴(yán)99
展開(kāi)
|
xlyloverml
展開(kāi)
varchar是根據(jù)字符串的長(zhǎng)度分配空間,那么varchar的寬度有什么意義呢? 柯敏軒
展開(kāi)
@ xlyloverml varchar所設(shè)置的寬度,指的是數(shù)據(jù)儲(chǔ)存的最大寬度。
打個(gè)比方:當(dāng)某字段設(shè)置的數(shù)據(jù)類(lèi)型為varchar,寬度為10,則這個(gè)字段所儲(chǔ)存的數(shù)據(jù)長(zhǎng)度最大為10。一定不能大于10,否則會(huì)報(bào)錯(cuò)。
然而只要數(shù)據(jù)長(zhǎng)度在10以內(nèi),都會(huì)有varchar的自動(dòng)分配空間大小的特性。
也就是說(shuō),假如某次我存入一條數(shù)據(jù),長(zhǎng)度為7,那么數(shù)據(jù)庫(kù)就會(huì)向硬盤(pán)申請(qǐng)7個(gè)字符大小的空間。用來(lái)保存這條數(shù)據(jù)。
雖然varchar這個(gè)特性特別好,但是犧牲了操作速度。所以大家在使用的時(shí)候要根據(jù)實(shí)際情況來(lái)選擇數(shù)據(jù)類(lèi)型。 cloud7777777
展開(kāi)
@ xlyloverml 可能意思是,varchar必須要先定義長(zhǎng)度,但在接收到值時(shí),會(huì)根據(jù)實(shí)際的長(zhǎng)度分配所需的空間,就不會(huì)像char那樣:即使值的長(zhǎng)度沒(méi)有定義時(shí)的那么長(zhǎng),但還是要用空格來(lái)占滿。 |
|
學(xué)習(xí)達(dá)人
|
lisongCW
展開(kāi)
|
承擔(dān)因您的行為而導(dǎo)致的法律責(zé)任,
本站有權(quán)保留或刪除有爭(zhēng)議評(píng)論。
參與本評(píng)論即表明您已經(jīng)閱讀并接受
上述條款。