2010-09-24 22 views
2

我正在設置郵件服務器,而我是mysql的密碼錶。目前它使用ENCRYPT()函數進行保護,但是我有一個很大的CSV,我想導入其中密碼都是純文本的。有沒有什麼辦法可以將它們作爲純文本導入,然後運行查詢以在整列上運行ENCRYPT()並更新所有內容?如何加密整個列

回答

3

你可以用一個簡單的更新做到這一點:

UPDATE your_table SET password_col = ENCRYPT(password_col,'some salt') 

或者,如果你正在使用LOAD DATA INFILE來填充表,然後你可以加密密碼:

LOAD DATA INFILE '/tmp/data.csv' INTO TABLE your_table 
(col1,...,@password,...,coln) 
set password_col = ENCRYPT(@password,'some salt') 
+0

感謝了一堆,那工作:) – Jonathan 2010-09-24 18:04:29