OracleのSQLについて質問があります。
VARCHAR2をReturnするFunction「GETKANANAME(引数はID)」があるとします。
このとき
Update NAMELIST
SET kananame = (select GETKANANAME('00001') from dual);
とすると、kananameに何も設定されません。
(エラーメッセージなどは何も出ていません。)
select GETKANANAME('00001') from dual;
だと期待する値が帰ってくるのですが…。
何か間違ったSQL文なのでしょうか?
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
もう解決済みかもしれませんが、Packageか何か function の上位のクラス(?)の名前をつけたらどうでしょうか。
パッケージ.GETKANANAME('00001')
No.1
- 回答日時:
SQL*Plusなどから UPDATE 文を実行した後、他のツールで結果を確認したりしていないでしょうか?
COMMITしないと他のツールでは(または別セッションのSQL*Plusでも)、変更内容を確認する事はできません。COMMITしてください。
上記を行なった上でのご質問であれば、ごめんなさいです。
以下は回答とは直接関係ないですが、書き方は
SET kananame = GETKANANAME('00001')
の方が性能としては良好だと思います。
(dual表を使うのはFunctionの実行結果を確認する時だけでよい)
もう1点、質問上、省略しただけかもしれませんが、引数は'00001'固定だとNAMELISTのkananameはすべて同じになりますが、これは大丈夫ですか?
引数はNAMELISTのIDなり他の変数なり、とかではないでしょうか?
返答ありがとうございます
>commitについて
commitは実行しています。
質問上省略しました、申し訳ありません。
>性能に関して
アドバイスありがとうございます。
性能のことも考えないといけないのですが、
まずは反映されないことにはどうにも。。。;
>引数固定
実際のSQLでは引数はnamelistのIDになり、WHERE句などがつきます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL SQLについて質問です。 SELECT TO_CHAR(TO_DATE('90-10-08.'YY- 4 2022/05/13 20:55
- Oracle sqlで質問です。 aテーブルとbテーブルがあり、下記のsqlで取得したidとnameに一致しないレ 1 2022/04/20 20:34
- Oracle 質問です。 下記のテーブルとデータがあり、 取得想定結果のように出力したいです。 下記のsqlだと0 2 2023/05/23 19:10
- MySQL 書籍の内容はまともでしょうか? 1 2023/01/22 03:07
- MySQL SQLです。下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「昨年の各月の総降 1 2023/07/01 00:32
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- Access(アクセス) アクセス 有効なフィールド名、または式として認識できませんのエラー 3 2022/08/19 11:53
- MySQL 下の画像はSQLの4大命令の性質をまとめたものであるらしいです UPDATE INSERT DELE 1 2023/06/07 15:36
- Oracle 下記のsqlで取得されるレコード以外を取得する方法ありますでしょうか。 SELECT B.番号, B 2 2022/04/20 23:21
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バッチファイルで複数フォルダ...
-
副問合せにLIKE文を使う方法は...
-
IPアドレスを数値に変換
-
videopad 無料版 アンインストール
-
スナップショット取得について...
-
sqlで質問です。 Aテーブルは店...
-
SQLの中上級者へのレベルアップ...
-
SELECTによる表の変換方法を教...
-
開発対象となるアプリケーショ...
-
質問です。 下記のテーブルとデ...
-
Oracleですがsqlで質問です。 ...
-
sqlで質問です。 Aテーブルの登...
-
sqlで質問です。 Aテーブルの情...
-
SQLの書き方について
-
SQLについて教えて下さい。 主...
-
sqlで質問です。 idを元にidに...
-
oracleで 10,20, 30, というデ...
-
索引作成について
-
googleプレイの履歴で取得とイ...
-
sql(oracle)で質問です。 テ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
副問合せにLIKE文を使う方法は...
-
oracleのimpdpでORA-39166
-
batファイルでのSQL(oracle)...
-
ORA-14452について
-
バッチファイルで複数フォルダ...
-
osqleditについて
-
64bit端末でのOLEDB接続に関して
-
データベースのカラムの型がCHA...
-
orace SQL文のエラー(ORA-0092...
-
質問です。 下記のテーブルとデ...
-
ワークテーブルって何?
-
SQLの中上級者へのレベルアップ...
-
テーブルやカラムの物理名のネ...
-
SQL ブレーク処理について
-
SQL update方法
-
Oracleで文字列型の時間を引き...
-
SQL 2つのテーブルとSUBSTRING...
-
複数レコードの完全一致
-
sqlで質問です。 aテーブルとb...
-
sqlで質問です。 Aテーブルの情...
おすすめ情報