我是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 '打印' 的消息?
- 如何用异常信息引发错误?
什么你在写什么语言?您似乎将C宏与直接SQL语句混合在一起,并且您在标记中说“plpgsql”。 – araqnid 2011-02-02 17:32:01
我是新来的postgres。你能指导我在postgres查询中实现这个吗? – 2011-02-02 17:34:11
谢谢。编辑。我尝试了其他几种语法,但徒劳无益。 – 2011-02-02 17:45:41