私はPostgreSQLを初めて使用しています。誰でもこのクエリを修正してください。PostgreSQLの例外処理
BEGIN TRANSACTION;
BEGIN;
CREATE TABLE "Logs"."Events"
(
EventId BIGSERIAL NOT NULL PRIMARY KEY,
PrimaryKeyId bigint NOT NULL,
EventDateTime date NOT NULL DEFAULT(now()),
Action varchar(12) NOT NULL,
UserId integer NOT NULL REFERENCES "Office"."Users"(UserId),
PrincipalUserId varchar(50) NOT NULL DEFAULT(user)
);
CREATE TABLE "Logs"."EventDetails"
(
EventDetailId BIGSERIAL NOT NULL PRIMARY KEY,
EventId bigint NOT NULL REFERENCES "Logs"."Events"(EventId),
Resource varchar(64) NOT NULL,
OldVal varchar(4000) NOT NULL,
NewVal varchar(4000) NOT NULL
);
COMMIT TRANSACTION;
RAISE NOTICE 'Task completed sucessfully.'
EXCEPTION;
ROLLBACK TRANSACTION;
RAISE ERROR @ErrorMessage, @LineNumber, @ErrorState --how to catch errors and display them????
END;
質問:
- T-SQLで 'PRINT' のようなメッセージを印刷する方法は?
- 例外情報でエラーを発生させるにはどうすればよいですか?
何あなたは言語で書いていますか? Cのマクロを直接SQL文と混在させているように見え、タグに "plpgsql"と言っています。 – araqnid
私はpostgresを初めて使っています。あなたは私がpostgresの質問の中でこれを達成するように案内できますか? –
ありがとうございます。編集されました。私は他のいくつかの構文を試みましたが、無駄でした。 –