2017-06-17 34 views
0

我有一個網站在數據庫中保存許多帖子。目前,我的表結構是這樣的:上面使用PHP腳本將數據庫列的內容複製到另一列

|-------|-------|-------------------| 
| id | url | title   | 
|-------|-------|-------------------| 
| 1 |  | Hello World  | 
| 2 |  | Hello World's | 
| 3 |  | Hello & World | 
|-------|-------|-------------------| 

在表看起來空url列。是的,我剛剛添加的那一欄,所以沒有任何內容。在title列中,有不同的帖子標題。

我對title字段有問題,因爲URL結構中存在一些不受支持的字符。 例如http://google.com/?url=Hello World's 因此字符串&在那裏不起作用。

我打算添加一個新的列作爲URL地址。所以像這樣我的新表將是:

|-------|-------------------|-------------------| 
| id |  url   | title   | 
|-------|-------------------|-------------------| 
| 1 | hello_world  | Hello World  | 
| 2 | hello_worlds | Hello World's | 
| 3 | hello_and_world | Hello & World | 
|-------|-------------------|-------------------| 

加入這個url的可以手動完成通過的phpMyAdmin,但我的職位的名單裏有幾千條。一個接一個做是不可能的。是否有一種方法可以使用PHP腳本和change (spaces) to (_),remove quoteschange the sign (&) to (and)title列中的所有數據複製到url列?

請不要給我建議使用ID作爲url地址?url=1, ?url=2, ?url=3,因爲我想用title作爲我的發帖地址。謝謝。

回答

1

你可以用一堆替換來做到這一點。你可以這樣做:

update t 
    set url = replace(replace(replace(title, ' ', '_'), '&', 'and'), '''', ''); 
+0

謝謝,我先試試 – GeeJhon

+0

成功。非常感謝你 – GeeJhon

相關問題