PostgreSQL 中连字符 (-) 的转义序列是什么

发布于 2024-09-27 18:56:13 字数 265 浏览 3 评论 0原文

我正在尝试将数据库重命名为带有连字符 (-) 的名称。

ALTER DATABASE one RENAME TO one-two;

psql 返回错误:

ERROR:  syntax error at or near "-"

我应该使用什么作为“-”字符的转义序列或者执行上述操作的方法是什么?

笔记: 我已经尝试过“\-”但效果不佳。

谢谢。

I'm trying to rename a database to a name with a hyphen (-).

ALTER DATABASE one RENAME TO one-two;

And psql returns an error:

ERROR:  syntax error at or near "-"

What should I use as an escape sequence for "-" character or what's the way to do the above?

Note:
I've tried the '\-' and didn't work as well.

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

十秒萌定你 2024-10-04 18:56:13

双引号应该可以做到。但是在引用数据库的任何地方都必须始终使用引用标识符。

ALTER DATABASE one RENAME TO "one-two";

Double quotes should do it. But you'll have to always use the quoted-identifier everywhere you reference the database.

ALTER DATABASE one RENAME TO "one-two";

混合双引号和单引号,如下所示:

psql --command='create database "db-name-with-dashes"'

Mix double quotes and single quotes as such:

psql --command='create database "db-name-with-dashes"'
怎樣才叫好 2024-10-04 18:56:13

psql -d -c "如果不存在则创建扩展 "'"uuid-ossp"'";"

psql -d -c "CREATE EXTENSION IF NOT EXISTS "'"uuid-ossp"'";"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文