2013-05-29 90 views
3

我想了解MSQL的重複條目是如何工作的。重複條目檢查

什麼我明白節約

title='aaaaaccccc' 

時兩次是和標題域是唯一的,你會得到錯誤:重複的條目。

MySQL會截斷長度爲200到64個字符的字符串,然後檢查64個字符長字符串是否是唯一的?

UPDATE:

當我保存2條(職稱)的MySQL抱怨違反保存了第二個冠軍時,唯一的約束。第一個標題是相同的,可以說是100個字符。之後它有所不同。 Wy是否會拋出重複鍵錯誤。

+0

什麼是截斷點?它可以互相補充完整的字符串。我不知道確切的算法。 –

+0

你的意思是,如果考慮到整個長度,插入的標題將是唯一的,但是當你試圖保存該值時,MySQL抱怨違反了唯一約束?你能否提供獨特約束的定義? –

+0

是的,MySQL在保存第二個標題時抱怨違反了唯一約束。第一個標題是相同的,可以說是100個字符。之後它有所不同。 Wy是否會拋出重複鍵錯誤。 – nelsonvarela

回答

1

這取決於數據類型:varchar列將會被修剪,但是char列不會(它們被填充到指定的列長度)。

+0

我用Charfield(varchar)+ maxlength = 255使用django – nelsonvarela