[前][次][番号順一覧][スレッド一覧]

mysql:8052

From: nisi <nisi <lemo@xxxxxxxxxx>>
Date: Thu, 17 Jul 2003 18:57:21 +0900
Subject: [mysql 08052] Re: [mysql 08049] CHAR 型フィールドの一部文字を変更したい


 nisi です

> ならないのですが、ドメインをID化しているのなら問題ないのですが、
> ごく少数のサイトで、CHAR型でxxx@xxxxxxxxxxなどと、そのまま入れて運営しており
> ます。

 私は多数そうしてる(そのまま入れる)ですが、もしかして
 「ドメインをID化」するほうが一般的なのでしょうか?


 本題、SQLだけでどうやるかわかんなかったんで・・・
 例えばRuby使ってやるとすれば、

-----
$server = "server" # サーバー
$user   = "user"   # ユーザー
$pass   = "pass"   # パスワード
$db     = "db"     # DB名

$table  = "table"  # 変更したいテーブル名
$col    = "col"    # 変更したいカラム名

require "mysql"

mydb = Mysql.new($server,$user,$pass,$db)

mydb.query("SELECT #{$col} FROM #{$table} ;").each_hash do |myRw|
  if myRw[$col] then
    chs = myRw[$col].sub(/^(.+)@jp-([a-z]).ne.jp/) {
      "#{$1}@#{$2}.vodafone.ne.jp" }
    mydb.query("UPDATE #{$table} SET #{$col} = '#{chs}' WHERE #{$col} = '#{myRw[$col]}' ;")
  end
end
-----

 みたいな感じですみますかね・・・

# テストなし/動作保障なし/雰囲気 笑

-- 
nisi <lemo@xxxxxxxxxx>
http://plantl.org/l/


[前][次][番号順一覧][スレッド一覧]

      8049 2003-07-17 17:25 [<lavlav@xxxxxxxxxx> ] CHAR 型フィールドの一部文字を変更したい 
      8050 2003-07-17 18:06 ┣[IWASAKI Dai <dai@xxx]                                       
      8051 2003-07-17 18:07 ┣[Youichi Iwakiri <yiw]                                       
      8053 2003-07-17 19:30 ┃┗[とみたまさひろ <tomm]                                     
      8055 2003-07-17 21:55 ┃ ┣[<lavlav@xxxxxxxxxx> ]                                   
      8394 2003-11-14 13:24 ┃ ┗[HOLA <hola@xxxxxxxxx]                                   
->    8052 2003-07-17 18:57 ┗[nisi <lemo@xxxxxxxxx] Re: [mysql 08049] CHAR 型フィールドの一部文字を変更したい