拉不拉稀肚拉稀 发表于 2024-8-15 16:50:01

pgsql 常用命令

以下是一些常用的 PostgreSQL (pgsql) 命令,用于在 PostgreSQL 数据库中执行各种操纵:
1. 连接到 PostgreSQL 数据库

psql -U username -d database_name
这将连接到指定的数据库。您需要更换 username 为您的 PostgreSQL 用户名,database_name 为您要连接的数据库名称。
2. 退出 PostgreSQL

\q
这个命令用于退出 PostgreSQL 的命令行界面。
3. 列出全部数据库

\l
这个命令用于列出 PostgreSQL 中全部的数据库。
4. 连接到指定命据库

\c database_name
这个命令用于切换到指定名称的数据库。
5. 列出全部表

\dt
这个命令用于列出当前数据库中的全部表。
6. 显示表布局

\d table_name
这个命令用于显示指定表的布局,包摆列名、数据类型等。
7. 显示视图

\dv
这个命令用于显示当前数据库中的全部视图。
8. 执行 SQL 查询

SELECT column1, column2 FROM table_name WHERE condition;
这是一个简朴的 SQL 查询语句示例,从表中选择特定的列,并使用条件过滤结果。
9. 创建数据库

CREATE DATABASE database_name;
这个命令用于创建一个新的数据库。
10. 创建表

CREATE TABLE table_name (
    column1 datatype,
    column2 datatype,
    ...
);
这个命令用于创建一个新的表,您需要指定表名、列名和对应的数据类型。
11. 插入数据

INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);
这个命令用于向表中插入新的行。
12. 更新数据

UPDATE table_name SET column1 = value1, column2 = value2 WHERE condition;
这个命令用于更新表中的现有行。
13. 删除数据

DELETE FROM table_name WHERE condition;
这个命令用于从表中删除符合条件的行。
14. 创建索引

CREATE INDEX index_name ON table_name (column1, column2, ...);
这个命令用于创建一个新的索引,以加快查询操纵。
15. 查看函数列表

\df
这个命令用于查看当前数据库中的全部函数。
16. 查看特定函数的界说

\df
+ function_name 这个命令用于查看特定函数的具体界说和信息。
17. 备份数据库

pg_dump -U username -d database_name > backup_file.sql
这个命令用于将指定命据库的备份输出到一个 SQL 文件中。
18. 恢复数据库

psql -U username -d database_name
< backup_file.sql 这个命令用于从一个 SQL 文件中恢复数据库。
19. 查看服务器信息

SELECT version();
这个命令用于查看 PostgreSQL 服务器的版本信息。
这些是一些常用的 PostgreSQL 命令,用于在 PostgreSQL 数据库中执行各种操纵,包罗连接数据库、管理表、执行 SQL 查询、创建索引、备份恢复等等。
复杂命令

当您处置处罚更复杂的 PostgreSQL 数据库操纵时,可能需要使用一些更高级的命令和功能。以下是一些复杂操纵的 PostgreSQL 命令和功能:
1. 使用变乱

BEGIN;
-- 执行一系列 SQL 命令
COMMIT;
这个命令用于在一个变乱中执行多个 SQL 命令,并在全部命令执行成功后将更改生存到数据库中。
2. 锁定表

LOCK TABLE table_name IN lock_mode;
这个命令用于锁定表,防止其他会话对其进行修改。
3. 触发器 (Triggers)

CREATE TRIGGER trigger_name
BEFORE INSERT ON table_name
FOR EACH ROW
EXECUTE FUNCTION function_name();
这个命令用于创建触发器,可以在插入、更新或删除表中数据时触发特定的操纵。
4. 复制 (Replication)

CREATE PUBLICATION publication_name FOR TABLE table_name;
这个命令用于创建发布,以便在 PostgreSQL 中设置数据复制。
5. 外部表 (Foreign Tables)

CREATE FOREIGN TABLE foreign_table_name (
    column1 datatype,
    column2 datatype,
    ...
) SERVER server_name OPTIONS (option1 'value1', option2 'value2');
这个命令用于创建外部表,可以让 PostgreSQL 访问和查询外部数据源,如其他数据库或文件。
6. 窗口函数 (Window Functions)

SELECT column1, column2, ROW_NUMBER() OVER (PARTITION BY column1 ORDER BY column2) AS row_num
FROM table_name;
这个命令用于在查询结果集中执行基于窗口的计算,如排名、累积和、分区等。
7. 全文搜索 (Full-Text Search)

SELECT column1, column2
FROM table_name
WHERE to_tsvector('english', column1) @@ to_tsquery('search_query');
这个命令用于执行全文搜索,允许您在文本列中进行高级搜索。
8. 递归查询 (Recursive Queries)

WITH RECURSIVE cte AS (
    SELECT id, parent_id, name
    FROM categories
    WHERE parent_id IS NULL
    UNION
    SELECT c.id, c.parent_id, c.name
    FROM categories c
    JOIN cte ON cte.id = c.parent_id
)
SELECT * FROM cte;
这个命令用于执行递归查询,允许您在层次布局数据中进行查询,如组织架构、目录布局等。
9. 数据类型转换

CAST(column_name AS new_data_type)
这个命令用于将列的数据类型转换为新的数据类型。
10. 多行插入

INSERT INTO table_name (column1, column2)
VALUES
    (value1_1, value1_2),
    (value2_1, value2_2),
    ...
这个命令用于一次性插入多行数据到表中。
11. 设置参数

SHOW parameter_name;
这个命令用于查看当前 PostgreSQL 服务器的设置参数。
12. 安全性和权限

GRANT permission ON table_name TO user_name;
这个命令用于授予用户对表的特定权限,如 SELECT、INSERT、UPDATE 等。
13. 存储过程和函数

CREATE FUNCTION function_name(parameter1 datatype, parameter2 datatype)
RETURNS return_datatype AS $$
BEGIN
    -- 函数体
END;
$$ LANGUAGE plpgsql;
这个命令用于创建存储过程和函数,允许您在数据库中界说自界说的数据处置处罚逻辑。
这些是一些更复杂的 PostgreSQL 命令和功能,可用于处置处罚高级的数据库操纵、数据转换、数据分析和管理。在进行这些操纵时,请务必过细阅读 PostgreSQL 官方文档,并确保在测试环境中进行充分测试。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: pgsql 常用命令