
No.3ベストアンサー
- 回答日時:
三度、失礼。
下のまんまじゃ、あんまりにもわかり辛いので・・・。(^^;;;
Hensu := (select convert(NVARCHAR2, :Hsensu1)
from dual);
で、ダメでしょうか?
ORACLEの場合は、dual がダミーテーブル(なはず)です。
これで、SQL文が成立しますので、変数に、値が格納されると思うのですが。
でわでわ
どうもです。
SQLの組み込み関数(convert)を使ってやってみました。
しかし、以前と同様にキャラクタセットの不一致でエラーとなってしまいました。
→キャラクタセットの設定方法が違うのでしょうか???
それで、他の組み込み関数はないかとあれこれ探したところTRANSLATEという関数を使ってみました。
Hensu := TRANSLATE(Hensu1 USING NCHAR_CS);
→'NCHAR_CS'でNCHARやNVARCAR2で使用するキャラクタセットを設定できるとのことです。
するとエラーなしでコンパイルできました。
Haizyさんのヒントのおかげでなんとか前に進むことができました。
色々アドバイスしていただいてありがとうございました。
感謝いたします。
No.2
- 回答日時:
再び。
そうですか、だめですかぁ~~。残念( ̄- ̄;
コンバート関数を、ダミーテーブルで・・・・
select convert(NVARCHAR2, :Hsensu1)
from dual
で、だめですかね?
No.1
- 回答日時:
こんにちは。
あぁ~PL/SQL、うろおぼえ~~~で、自身無しですが・・・
Hensu := N || Hsensu1;
|| パイプ って、文字列結合でしたよね?
なので、この命令って、
Nという変数内の文字 と Hsensu1 という変数内の文字を結合して、Hensuに入れろですよね。
NVARCHAR2 ← VARCHAR2 の受け渡しって、そのまま直で、渡せませんでしたっけ?
Hensu := Hsensu1;
ひょっとして、日本語(2バイト文字)化けちゃいます?
この回答への補足
回答ありがとうございます。
NVARCHAR2 ← VARCHAR2 の受け渡しって、そのまま直で、渡せませんでしたっけ?
Hensu := Hsensu1;
上記のように、受け渡すと’キャラクタセットが違います’といった旨のコンパイルエラーが出てしまいます。
そこで、試験的に色々やってみて
Hensu := N'テスト';
がうまくいったので(SQL*PLUSのUPDATEにおいて、NVARCHAR2への更新は'N'をつけるようです)、
Hensu := N || Hsensu1;
といったちょっと浅はかなことをしているのです。
うーん、基本的にPL/SQLでVARCHAR2の変数はつかえないのでしょうか?(そんなことはないと思うけど)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
GROUP BYを行った後に結合した...
-
MERGE文を単体テーブルに対して...
-
unionでマージした副問合せを結合
-
select句副問い合わせ 値の個...
-
SELECTの結果で同一行を複数回...
-
SQLの書き方(チェックボックス)
-
select insertで複数テーブルか...
-
SET句内で複数の条件を指定して...
-
oracleの分割delete
-
複数テーブルのMAX値の行データ...
-
マテビューのNOTNULL設定について
-
固定値を含む結合と複数テーブ...
-
unionの結果は集計はできないで...
-
SQL GROUPで件数の一番多いレコ...
-
PL/SQL
-
AccessからOracleへの外部結合
-
Oracleでの文字列連結サイズの上限
-
OracleのSQL*PLUSで、デー...
-
SELECTで1件のみ取得するには?
-
差し込み印刷のレコード数について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
GROUP BYを行った後に結合した...
-
select insertで複数テーブルか...
-
select句副問い合わせ 値の個...
-
SELECTの結果で同一行を複数回...
-
MERGE文を単体テーブルに対して...
-
SQL GROUPで件数の一番多いレコ...
-
unionでマージした副問合せを結合
-
外部結合とor条件混在の記述方法
-
複数テーブルのMAX値の行データ...
-
固定値を含む結合と複数テーブ...
-
結合と副問い合わせの違い
-
oracleの分割delete
-
他のテーブルを参照した値はupd...
-
SET句内で複数の条件を指定して...
-
SQLの書き方(チェックボックス)
-
集計後の数値が倍になる
-
unionの結果は集計はできないで...
-
COUNTの取得方法(?)について...
-
SQLでの絞り込み検索
-
最大値の取得
おすすめ情報