• ベストアンサー

ハングル文字が入らない。

ハングル文字が入らない。 DBを「SQLServer2005」を使って、 ハングル文字を使うシステムを開発しております。 ハングル文字を格納するフィールド(カラム)の型を nvercharで設定しました。 Accessのリンクで直接貼り付けた場合はハングル文字が格納されますが、 insertやupdateでは??が格納されてしまいます。 どうすれば、SQL文でハングル文字が格納できますでしょうか? 韓国版のSQLServerでないと駄目なのでしょうか? どなたか教えて下さい。 よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • norayuni
  • ベストアンサー率79% (27/34)
回答No.1

nvercharのようにユニコードに対応しているデータ型に、正しくユニコード文字を 格納したい場合には、 INSERT INTO TestTable VALUES(N'test') のように、値の前に「N」プレフィックスをつけなければなりません。 これは、SQL ServerでもOracleでも同じ仕様です。

aru_008
質問者

お礼

ありがとうございます。 無事うまくいきました。 基本的な事のようで、もっと勉強しておきます。

関連するQ&A

  • varchar型の入力できる最大文字数について

    varcharでサイズを8000にしたフィールドに1000文字(例えば’aaa・・・「a」を1000文字・・・’)INSERTした後にそのフィールドをSELECTすると256文字しか入っていません。どうしてなんでしょうか? SELECT、INSERTなどのSQLの実行は”クエリ アナライザ”や”SQL Server Enterprise Manager”で試しました。 SQLServer初心者です。何卒宜しくお願い致します。

  • 文字列に対してPHP上で一括置き換えしたい

    DBにあるテーブルの指定されたカラム全てを文字列に対してPHP上で一括置き換えしたいです。 phpアドミン上でSQL文を使って UPDATE `テーブル名` SET フィールド名A=REPLACE (フィールド名A,"置換前の文字列","置換後の文字列"); で実行したらうまくいくのですが、 これをPHP上で処理したいと考えてます。 require("godb.php");//DBにアクセス $sql ="UPDATE テーブル名 SET フィールド名 = REPLACE(フィールド名,"AAA","BBB")"; mysql_query($sql2); と実行してもうまくいきません。。。 これって、、、一個一個対象カラムをPHP上で取り出してから 処理をかけないといけないのでしょうか。。 アドバイスいただけたら幸いです。 よろしくお願い致します。

    • ベストアンサー
    • PHP
  • ★ハングル文字をイラストレーターで打ち込みたい★

    今回、韓国語の案内板を作ることになりました。 がっ、ハングル文字の入力の仕方が分かりません・・・ 最悪、文字を一つずつトレースして作ることも考えていますが、文字数が多い為、かなりの時間が掛かりそうです。何か良い方法はないでしょうか?ハングルのフォントは「ダイナフォント」韓国語フォントのTrueType版が1書体手元にあります。(OSはウインドウズXP、イラレは8.01と10です。)

  • DBへのinsert文作成方法

    VB2008Ex SQLServer2008Exを使用してます。 SQLClientで接続してますがVBから、あるテーブルのフィールド数・フィールド名・型・最大バイト数(文字数)を取得することは可能でしょうか? GetSchemaGetSchemaでフィールド名だけはは持ってこれそうなのですが・・・。 insertする時にフィールド数が多いのでSQL文がすごく長くなってしまいます。なので上記のバイト数が分かれば読み込んだテキストデータを ループで切り出しながら「,」や「''」を付加してSQL文が簡単に作れるかな?と思っています。 開発環境は上記の通りです。

  • php db 文字化け

    文字コードEUC-JPで開発しています。 題名の通り文字化けします。 どうやらDBからselectやinsertしたときに文字化けをするようです。 selectですと文字化た値が取れますし、 insertでは文字化けするためinsertできずエラーとなります。 sql直前で mysql_query("set names EUC-JP"); も行っています。 テーブルの文字コードはオプションで eucjpms -- UJIS for Windows Japanese としています。 個別に該当カラムもそうしています。 何がまずいでしょうか?

    • 締切済み
    • PHP
  • サイトにハングル文字を載せたい

    現在、イラスト系のサイトを運営しております。最近、海外(特に韓国)から閲覧している方が増えているのに気づき、簡単な説明文をハングル文字で掲載しようと思いました。一応、「無断転載禁止」の外国語バナーを配布してるサイトさんがいらっしゃったのでそれはお借りしたのですが「リンクはご自由にして下さい。私もあなたのサイトとリンクします」がなかったので自分で入力しようと思ったのですが翻訳サイトでやったものをコピペしても文字化けしてしまいます。どうすればいいでしょうか。(リンクは自由にやっていいモノなのでわざわざ入れなくてもいいのでしょうが) 主に使用しているのはホームページビルダー6.5ですがHTMLタグの知識は少々あります。 急いでいないのでお暇なときにでも教えていただけると助かります。

  • SP1をSP2にしたらエディタでハングル文字が「・・・」と表示されるように

    今ごろですが、Windows XP SP1をSP2にアップデートしました。 その後、サイトの更新をしようと秀丸でhtmlファイルを開いたところ、以前は見られていたハングル文字が「・・・・」で表示されるようになりました。 (unicodeで保存してありました) IEではハングル文字は普通に見られます。 文字化けでもなく「・・・」ということはフォントがないということでしょうか。 インターネットオプションからフォントを入れればいいのでしょうか。 以前入れたはずなのにSP2になったので消えてしまったのでしょうか。 インターネットオプションなのでIEを見る時に必要なフォントなのかと思っていましたが、違うのでしょうか。 秀丸の方は一応、最新版にアップデートしましたが、やはりハングル文字は見られませんでした。

  • update時にtimestampが更新されない

    昨日SQLについて学び始めたばかりでわからないことが多く、質問させていただきます。 フィールドをtimestamp型で定義すれば、insert時やtimestamp時に自動的に日時が更新されるということですが、なぜかupdate時に更新されません。 insert時にはちゃんと日時が入りますし、insert後にtimestampのカラムにNULLをいれたときも更新されました。なせupdate時だけ更新されないのでしょう?

  • ハングル混じりのチラシを作りたいので教えてください

    教えてください。 職場で外国人のための日本語教室をやっていて、そのチラシを新しく作ることになりました。 タイトル部分に日本語、中国語、韓国語、英語と四ヶ国語で表示します。 ところがこの教室を担当している担当者は中国語、韓国語を全く解さず、小生も同じくです。中国語は何とかクリアーしたものの、ハングルでつまずいております。 Windows Vistaでのハングルの入力方法を調べ、どうにか入力しましたが1文字だけうまく入力できません。 担当者が知り合いの韓国人に教えてもらった、ハングル版タイトルを書いた手書きの原稿をスキャンして貼り付けておきました。 赤い丸で囲った部分はハングル一文字と言われたのですが、どう頑張っても二文字になってしまいます。 赤丸の部分は本当に一文字でいいのでしょうか?二文字で正解なのでしょうか? そもそもこのハングルはこれで正しいのでしょうか? お恥ずかしい話ですが、担当者が海外旅行中で連絡がつきません。小生も韓国人の友人とはいないのでこちらでお伺いした次第です。 ちなみに日本語のタイトルは「日本語実践サロン」です。韓国ではサロンという概念はないので直訳ではないと、説明を受けました。 わかりずらい説明で恐縮ですが、どなたかご教授のほどよろしくお願いします。

  • 文字が?に

    お世話になります。 VB.Net2003 Access2003 Windowsサーバー2003 SQLサーバー2000 という環境で開発を行っていますVB.Net初心者です。 実は特殊な漢字になると思うのですが例えば「侁」とか「暭」というような文字をAccess2003からやエンタープライズマネージャーでSQLサーバーに保存したときはなんら問題は無いのですがVB.Net2003で開発したプログラムでUPDATEをやINSERTを実行したとき「?」として保存されてしまいます。 何故なんでしょう?そしてよい解決方法があればご教授いただきたいのですが、よろしくお願いいたします。