用ci做個專案時,遇到乙個問題,其中乙個欄位是base64轉碼後的,類似「mnlhmgpzttnvmtqznjuwnjq3ng==」。 作為查詢條件時,始終查不出結果。
sql是這樣寫的:
$where = "user_id=" . $this->data['user_id']. " and data='" .$this->data['token']. "' and expire>". time();
把sql列印出來,就成了:
`user_id` = 2 and data='mmjoatbxmxzwmtqznjuwmzy0na= = ' and `expire` > 1436503724
發現,「=」被處理了。跟蹤後,發現是在ci的 db_query_builder.php的_compile_wh函式中,將sql的key和value 分別解析為:
key:data='mmjoatbxmxzwmtqznjuwmzy0na=
value: '
終於發現問題所在了。修改sql為:
$where = "user_id=" . $this->data['user_id']. " and data = '" .$this->data['token']. "' and expire>". time();
成功了。
非常汗的乙個問題。。
mysql中儲存字段型別的查詢效率
檢索效能從快到慢的是 此處是聽人說的 第一 tinyint,smallint,mediumint,int,bigint 第二 char,varchar 第三 null 整數型別 1 tinyint,smallint,mediumint,int,bigint,分別用8,16,24,32,64存 2 整...
MySQL中儲存時間的最佳實踐指南
目錄 平時開發中經常需要記錄時間,比如用於記錄某條記錄的建立時間以及修改時間。在資料庫中儲存時間的方式有很多種,比如 mysql 本身就提供了日期型別,比如 datetime,timestamep 等,我們也可以直接儲存時間戳為 int 型別,也有人直接將時間儲存為字串型別。那麼到底哪種儲存時間的方...
Mysql中儲存UUID去除橫線的方法
參考 通常用uuid做唯一標識,需要在資料庫中進行儲存。uuid的格式 複製 如下 string string uuid.randomuuid tostring system.out.println uuid string uuid 05ba463f 1dab 471f 81c7 58e0b06f3...