我現在收到一個警告,傳遞參數爲BigInteger
已被棄用。但是,我不確定是否有其他方式將該值聲明爲無符號。我存儲了MySQL的uuid_short()
函數的結果,該函數是一個無符號的64位整數,如果該列未聲明爲UNSIGNED
,則可能會導致溢出。SQLAlchemy - 創建未簽名的BigInteger的正確方法
現在處理這個問題的正確方法是什麼?
我現在收到一個警告,傳遞參數爲BigInteger
已被棄用。但是,我不確定是否有其他方式將該值聲明爲無符號。我存儲了MySQL的uuid_short()
函數的結果,該函數是一個無符號的64位整數,如果該列未聲明爲UNSIGNED
,則可能會導致溢出。SQLAlchemy - 創建未簽名的BigInteger的正確方法
現在處理這個問題的正確方法是什麼?
從https://groups.google.com/forum/#!topic/sqlalchemy/L3otXINq6Ts:
可以使用from sqlalchemy.dialects.mysql import BIGINT
我對SQLAlchemy並不熟悉。無論如何,我記得你可以設置一個無符號整數方式如下:
from sqlalchemy.dialects.mysql import INTEGER
Column(INTEGER(unsigned=True))
或只是
from sqlalchemy.dialects.mysql import INTEGER as Integer
Column(Integer(unsigned=True))
這同樣適用於BIGINT。
你應該強調的是某種方式,您取得的各類'dialects.mysql' ......我沒有看到,在第一。 –
很明顯,我正在從'sqlalchemy.dialects.mysql'中導入'INTEGER',不知道它如何更清晰。無論如何,它是否與你一起工作?如果是這樣,請不要忘記接受答案。 – moenad
對不起,我只是看着'Integer(unsigned = True)',並認爲你已經在做同樣的事情了。 –
只爲審查此事的人...我接受了這個答案,因爲我在IRC上的任何其他答案之前從IRB的jbub上獲得了這個答案。 –