截?cái)嘧址蚨M(jìn)制怎么弄 怎么解決過(guò)程中提示:將截?cái)嘧址蚨M(jìn)制數(shù)據(jù)?
怎么解決過(guò)程中提示:將截?cái)嘧址蚨M(jìn)制數(shù)據(jù)?在C語(yǔ)言中,字符串不能包含空字符,否則空字符將被視為字符串的結(jié)尾。也就是說(shuō),C語(yǔ)言中的字符串默認(rèn)以“0”結(jié)尾,這不是二進(jìn)制安全的,因?yàn)樵趫D片和音頻等二進(jìn)制
怎么解決過(guò)程中提示:將截?cái)嘧址蚨M(jìn)制數(shù)據(jù)?
在C語(yǔ)言中,字符串不能包含空字符,否則空字符將被視為字符串的結(jié)尾。也就是說(shuō),C語(yǔ)言中的字符串默認(rèn)以“0”結(jié)尾,這不是二進(jìn)制安全的,因?yàn)樵趫D片和音頻等二進(jìn)制數(shù)據(jù)中會(huì)有“0”,字符后面的數(shù)據(jù)在C字符串中會(huì)被忽略。在redis中,有這樣一種結(jié)構(gòu):用來(lái)表示字符串值,稱為SDS(simple dynamic string)。Buf是char類(lèi)型的數(shù)組,用于存儲(chǔ)二進(jìn)制數(shù)據(jù)。Len記錄字符串的長(zhǎng)度(不一定是buf數(shù)組的長(zhǎng)度)。SDS不使用空字符串,而是使用len的值來(lái)判斷字符串是否結(jié)束,因此可以保存redis特殊的數(shù)據(jù)格式,包括二進(jìn)制數(shù)據(jù)。
如果我們要給出二進(jìn)制安全性的定義,可以這樣描述:一個(gè)函數(shù)或方法可以將任何輸入作為原始數(shù)據(jù)流,沒(méi)有任何特殊的格式含義,那么它就是二進(jìn)制安全性。
將截?cái)嘧址蚨M(jìn)制數(shù)據(jù)怎么解決?
將截?cái)嘧址蚨M(jìn)制數(shù)據(jù)是什么意思?
數(shù)據(jù)庫(kù)中字段的長(zhǎng)度不夠。如果您不能放入所需的數(shù)據(jù),只需增加長(zhǎng)度
您可以使用文本
怎么解決過(guò)程中提示:將截?cái)嘧址蚨M(jìn)制數(shù)據(jù)?
報(bào)告此錯(cuò)誤是因?yàn)槟迦氲淖址拈L(zhǎng)度超過(guò)了您定義的字符串的長(zhǎng)度,該字符串是您的nchar。您已經(jīng)一個(gè)接一個(gè)地定義了三個(gè)這樣的類(lèi)型,與表文件對(duì)應(yīng)的字段比您傳入的字符串長(zhǎng)度短。此外,變量賦值不能超過(guò)變量定義的長(zhǎng)度。綜上所述,有兩個(gè)原因首先,變量的值不能超過(guò)變量定義的長(zhǎng)度。其次,與表文件對(duì)應(yīng)的字段長(zhǎng)度應(yīng)該與變量傳入的字符串長(zhǎng)度相同