タグ付けされた質問 「dml」

2
Function / ProcedureでのDML操作後にコミットが必要ですか?
function / procedureでinsert / delete / updateの後にcommitを書く必要があるかどうか知りたいのですが? 例: create or replace function test_fun return number is begin delete from a; return 0; end; または手順 create or replace procedure aud_clear_pro as begin delete from a; end; 削除後にコミットする必要がありますか? 次の状況を理解できません。 SQLウィンドウから関数/プロシージャを呼び出す場合、コミットが必要です しかし dbms_schedulerを使用して関数/手順をスケジュールし、ジョブを実行すると、deleteステートメントが自動的にコミットされます。 どうして?

1
PostgreSQLでテーブルの照合を決定する方法は?
PostgreSQLのテーブルで使用されている照合のチェックをスクリプト化したいのですが、グーグル検索Postgresql detect collationがうまく機能しておらず、ドキュメントでは簡単に検索できません。 誰が私にこれを確認する方法を教えてもらえますか?

1
影響を受ける行がないにもかかわらずトリガーをトリガー
これはより一般的な質問ですが、この質問の動機は、SQL Serverの使用中に直面した問題でした。 このトリガーは、副作用として、行が挿入されなかった場合にエラーが発生するロジックを含むテーブルのInsertイベントにアタッチされています。さらに調査したところ、行が挿入されていないにもかかわらず、トリガーが発動していることがわかりました。 MicrosoftドキュメントのDMLトリガーで使用されている言語は、この動作と矛盾しているようです。 DMLトリガーは、トリガーで定義されたテーブルまたはビューに影響するDMLイベントが発生すると自動的に有効になる特殊なタイプのストアドプロシージャです。 これは、DBMS全体のデフォルトの動作ですか?影響を受ける行がないときにトリガーを起動する特別な理由はありますか?

2
UPDATE SET REPLACE()ステートメントが行に一致するのに、何も変更せず、警告を出さないのはなぜですか?
フィールドで特定の文字列を探していますが、新しい文字列に置き換えたいと考えています。具体的には、あるURLへのすべての参照を別のURLに変更する必要があります。このSQLステートメントを作成し、mysql>MySQL Community Server 5.1.54を使用してCentOS 5.5のプロンプトで実行しています。 update [table] set [field] = REPLACE([field],'%domain.com%','%domain.org%'); 応答は次のとおりです。 Query OK, 0 rows affected (0.02 sec) Rows matched: 618 Changed: 0 Warnings: 0 変更が行われない理由を追跡するにはどうすればよいですか? 編集1: Aaron Bertrandのおかげで、REPLACE()ワイルドカードを処理できないことがわかり、それを完全に間違って使用していました(WHERE句の欠落など)。これが私の改定された声明です。 UPDATE [table] SET [column] = REPLACE ( [column], 'companydomain.com', 'companydomain.org' ) WHERE [column] LIKE '%companydomain.com%'; 私は古い、おなじみを受け取ります: Query OK, 0 rows …
9 mysql  dml 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.