• 締切済み

MYSQL追加入力perare構文を教えてください

create table sample( id int not primary key auto_increment, kokyaku_cd int(12), kokyaku_name varchar(32), index(kokyaku_cd) )engine=innodb; (sample.kokyaku_cd 外部キーの親キーと設定しています 子キーcreate table sample_1は記入しません (forgine key (kokyaku_cd) references sample (kokyaku_cd) on update cascade on delete cascade) insert into sample_1_1( kokyaku_cd,kokyaku_name) values (1,'佐々木’), (2,'田辺'); sample_1_1 データ50カラム入力後 単価カラムを追加します alter table sample_1_1 mofiy column tanka int(12); tankaカラム入力時 update文では50行入力は 安全性もあり困難な為 perare構文で一括入力を希望します(適切か分かりません) perare up_sql from 'update sample_1_1 set tanka=? where kokyaku_name=?'; set @a='10000'; set @b='佐々木'; excute up_sql using @a,@b; エラーは出ないのですが、入力すべて0で結果が反映されていません (tankaがNULLのままです) 複数入力する方法と上記構文が間違っているようであれば 教えていただけないでしょう 独学の為トンチンカンな構文かもしれませんが 教えていただけないでしょうか よろしくお願いします。

みんなの回答

  • mpro-gram
  • ベストアンサー率74% (170/228)
回答No.1

コマンドラインの mysql client からの実行なのでしょうか? きちんと多バイト文字が一致できていないのでは? mysql client の文字コード設定とか、データベース側文字コード設定とか、sql ファイルで流しこんでいるなら、sqlファイルの保存時文字コードとかご確認下さい。 ascii文字(単バイト文字)だけの行も作ってみて、意図通りに実行できているのかも確認してみると文字コード問題なのか別の原因かも絞り込めるでしょう。

関連するQ&A