mysql
中可以使用
create temporary table
建立臨時表,但是要注意這個臨時表是與資料庫連線相關的,資料庫連線斷開後,臨時表會被自動刪除,不僅僅是清空資料,這點與
oracle
是不同的,
oracle
會一直保留表的定義,而且可以選擇
commit
或者連線斷開後清空資料。由於連線相關性,不同的連線可以建立同名的臨時表,互不衝突,而且臨時表可以和普通表同名,所以使用
mysql
的臨時表要注意以下幾點:
1.mysql
只有在連線斷開後才會自動刪除臨時表,如果乙個臨時表在乙個連線內重複使用,要注意清空之前的無用資料,如果每次使用的用途有所不同,最好顯示的
drop temporary table
後再重新建立。
2.應用程式中使用乙個與普通表同名的臨時表時,要特別注意資料庫連線錯誤斷開的情況,因為有的應用程式具有自動重新連線資料庫的功能,如果此時沒有重新建立臨時表,就有錯誤操作普通表的危險。
3.有些應用程式提供資料庫的持久連線或者連線池,資料庫連線會在不同的客戶端程式之間共享,要特別注意臨時表資料的清理工作。
mysql表設計注意事項
1 主鍵,最好使用業務主鍵,採用時間 伺服器編號 序號,進行生成,如果沒有特殊要求,直接使用資料庫自增序列值即可。主要是達到查詢效率快,不用走二級索引 2 對於業務資料,如果需要對多個字段建立索引,且這幾個字段查詢的時候都是一起作為條件的,可以設計為聯合索引。建索引的時候,將篩選力度大的屬性放前面,...
mysql使用distinct注意事項
1.mysql使用distinct的使用 一定要位於 查詢的最前端 例項 select distinct sla code,id,sla type,sla place,sla rank 如果放在後面則報錯如 2.select t d,sla type,sla place,sla rank disti...
mysql索引 使用注意事項
索引使用缺點 雖然索引大大提高了查詢速度,同時卻會降低更新表的速度,如對表進行insert,update和delete。因為更新表時,mysql不僅要儲存資料,還要儲存一下索引檔案 建立索引會占用磁碟空間的索引檔案。一般情況這個問題不太嚴重,但如果你在要給大表上建了多種組合索引,索引檔案會膨脹很寬 ...