日本語文字列を検索して、置換するには?


サンプー  2004-10-23 07:33:03  No: 11507

簡単なデータベースを作っています。顧客台帳に顧客名と担当者名を作りましたが、担当者(佐藤)が退社したため、担当者(伊藤)に変更しようとしていますが、なかなかうまくいきません。どなたか教えてください。


StringReplace  2004-10-23 19:28:30  No: 11508

Str:=StringReplace(Str,'佐藤','伊藤',[rfReplaceAll])


Syake  2004-10-23 19:32:28  No: 11509

データベースが何なのかわかりません。
質問者がDelphiでどの様に処理をしていて上手くいかないのか
それも判りません。

通常なら(オラクルとかSQLServerとか)一括して変えるなら
バッチファイルでもコマンドプロンプトからでも変えれます。
UpDate文を流せば良いと思います・・・としか答えようが

「UpDate 顧客台帳 SET 担当者名 = 伊藤 WHERE 担当者名 = 佐藤」


HOta  2004-10-23 19:32:45  No: 11510

こういう時のためのデーターベースです。
顧客マスターと担当者マスターを分けて、
担当一覧表にすれば、こんな問題は出ませんよ。


サンプー  2004-10-25 21:38:37  No: 11511

DL6pro、BDEにて開発しています。顧客テーブルは顧客マスター、顧客のデータは夫々にテーブルを作成してSQL文を発行してデータ一覧を見れるようにしています。この一覧のデータから例えば、担当者が(担当者=伊藤)という顧客を絞り込みたいと思うのですが、まず、この段階でのやり方が判りません。絞り込んだ後に、担当者の名前を変更して、新しい担当者へ引き継ぎたいと思います。何分、初心者なのでヘルプファイルなどを読んでもうまく理解できません。よろしくご教示、お願いします


HOta  2004-10-26 01:00:31  No: 11512

例えば

担当者マスター
担当者CD      担当者名
0001           佐藤
0002           伊藤
0003           鈴木

顧客データー
顧客CD        顧客名        担当者CD
00001         顧客1        0001
00002         顧客2        0001
00003         顧客3        0003    
00004         顧客4        0001

の様なテーブルがあったとすると、担当者が0001/佐藤から
0002/伊藤に変わる場合は、Syakeさんの書いているように

UPDATE 顧客データー SET
担当者CD = 
(SELECT 担当者CD
 FROM 担当者マスター
 WHERE 担当者名 = "佐藤")
WHERE 担当者CD=
(SELECT 担当者CD
 FROM 担当者マスター
 WHERE 担当者名 = "佐藤")

とすれば簡単に変更できます。


bob  2004-10-26 02:57:02  No: 11513

HOtaさん、それ値変わらないっす^^;
#DBがSQL Serverと仮定して

1.担当者が(担当者=伊藤)という顧客を絞り込み
Select A.* From 顧客データー A 
    Inner join 担当者マスター B on A.担当者CD = B.担当者CD
    Where B.担当者名 = '伊藤'

2.担当者(伊藤)を、担当者(福沢)に変更。ただし名前だけ
Update 担当者マスター Set 担当者名 = '福沢' where 担当者名 = '伊藤'

3.担当者(伊藤)が受け持っている顧客を、担当者(福沢)に変更。
UPDATE 顧客データー SET 担当者CD = 
    (SELECT 担当者CD FROM 担当者マスター WHERE 担当者名 = "伊藤") --←ここ
  WHERE 担当者CD=
    (SELECT 担当者CD FROM 担当者マスター WHERE 担当者名 = "佐藤")


bob  2004-10-26 02:59:06  No: 11514

3.の説明文が僕も間違ってました。

3.担当者(伊藤)が受け持っている顧客を、担当者(福沢)に変更。
        ↓
3.担当者(佐藤)が受け持っている顧客を、担当者(伊藤)に変更。


HOta  2004-10-26 06:04:17  No: 11515

ごめんなさい
コピーして、修正するのを忘れていました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加