我想查詢針對MSSQL數據庫上BIGINT主鍵和一些返回的值調高圓潤,比存儲在數據庫中的有所不同:PDO MSSQL - 錯BIGINT返回值
9200000000000359存在於DB以及9200000000000361中。查詢這兩個值中的任何一個都會返回9200000000000360(注意:該值在數據庫中不存在)。
看起來,這些值首先(錯誤地)轉換爲二進制,並在轉換回來時導致與原始值不同的值。但我在64位機器上使用PHP 5.6,而不是32位。當使用dblib和odbc驅動程序時也會發生這種情況。
有什麼設置可以在SQLServer或php.ini配置中獲得正確的值嗎?
奇怪的是,什麼是'串(16)'? – 2016-09-29 07:46:29
如果你在你的16位整數週圍加上單引號「'」,會發生什麼? – Abela
@Abela我不認爲它可能會改變一件事情,因爲兩者都是字符串。編輯:順便說一句,是一個輸出字符串,你不能改變引號。 – 2016-09-29 07:47:30