如何在Sql中转义分号?我使用了playframework,我试图在“值”中插入html代码,但是当我尝试使用分号时,它不起作用?
CREATE TABLE "R_EMAIL_TEMPLATE"
(
"ID" uuid NOT NULL,
"WP_ID" uuid NOT NULL,
"CODE" text NOT NULL,
"SUBJECT" text NOT NULL,
"CONTENT" text NOT NULL,
"CREATED_AT" timestamp without time zone,
"CREATED_BY" text,
"UPDATED_AT" timestamp without time zone,
"UPDATED_BY" text,
CONSTRAINT "R_EMAIL_TEMPLATE_pkey" PRIMARY KEY ("ID"),
CONSTRAINT "R_EMAIL_TEMPLATE_WP_pkey" FOREIGN KEY ("WP_ID") REFERENCES "C_WP" ("ID")
);
INSERT INTO "R_EMAIL_TEMPLATE"
VALUES (
'30abd6ec-3496-45ff-be54-7f6f9290ebc4',
'30abd6ec-3496-45ff-be54-7f6f9290ebcf',
'user-activation',
'User Registration',
';',
'2018-05-17 19:02:39.643',
'LOGIN',
null,
null
);
答案 0 :(得分:2)
分号不需要逃脱。 看来问题不在于分号,而是关于您在第二次INSERT中使用的双引号
SQL中的字符串值必须用单引号引起来。保留双引号用于对象名称,例如架构/表/列名称等。
所以尝试
INSERT INTO "R_EMAIL_TEMPLATE"
VALUES (
'30abd6ec-3496-45ff-be54-7f6f9290ebc4',
'30abd6ec-3496-45ff-be54-7f6f9290ebcf',
'user-activation',
'User Registration',
';',
'2018-05-17 19:02:39.643',
'LOGIN',
null,
null
);
相反...
答案 1 :(得分:0)
使用\设置转义字符,然后尝试执行以下操作:
INSERT INTO "R_EMAIL_TEMPLATE"
VALUES (
'30abd6ec-3496-45ff-be54-7f6f9290ebc4',
'30abd6ec-3496-45ff-be54-7f6f9290ebcf',
'user-activation',
'User Registration',
'\;',
'2018-05-17 19:02:39.643',
'LOGIN',
null,
null
);