PostgreSQL psql 命令和常用的 SQL 语句整理

PostgreSQL psql 命令和常用的 SQL 语句整理

  • 1、登录PostgreSQL数据库
  • 2、psql 命令
  • 3、数据库操作
  • 4、模式操作
  • 5、表操作
  • 6、数据操作
  • 7、索引操作
  • 8、视图操作
  • 9、权限操作

1、登录PostgreSQL数据库

在系统的命令行界面(如 Windows 的 cmd 或者 PowerShell、Linux 的终端等)中执行

-- 直接登录指定数据库:
psql -U postgres -d  database_name
或者
-- 不指定数据库则连接默认的postgres数据库:
psql -U postgres

2、psql 命令

-- 切换到指定数据库
\c database_name-- 查询数据库列表
\l-- 查询模式列表
\dn-- 查看表结构
\d table_name-- 查看所有表
\d-- 查看指定模式下的所有表
\d schema_name.*-- 查看客户端编码和服务器编码
SHOW client_encoding;
SHOW server_encoding;-- 临时指定编码
SET client_encoding TO 'UTF8';-- 临时设置模式
SET search_path TO public;-- 执行脚本
\i 'E:/xxx_pg.sql'-- 退出
\q

3、数据库操作

-- 创建数据库
CREATE DATABASE database_name;-- 删除数据库
DROP DATABASE IF EXISTS database_name;-- 查看数据库所有者
SELECT datname, pg_get_userbyid(datdba) FROM pg_database WHERE datname = 'database_name';-- 修改数据库所有者
ALTER DATABASE database_name OWNER TO new_owner;

4、模式操作

-- 创建模式
CREATE SCHEMA schema_name;-- 删除模式
DROP SCHEMA IF EXISTS schema_name CASCADE;-- 查看模式所有者
SELECT nspname, pg_get_userbyid(nspowner) FROM pg_namespace WHERE nspname = 'public';-- 修改模式所有者
ALTER SCHEMA schema_name OWNER TO new_owner;

5、表操作

-- 创建表
CREATE TABLE table_name (id SERIAL PRIMARY KEY,column1 datatype,column2 datatype
);-- 删除表
DROP TABLE IF EXISTS table_name;-- 修改表名
ALTER TABLE table_name RENAME TO new_table_name;-- 添加列
ALTER TABLE table_name ADD COLUMN new_column datatype;-- 删除列
ALTER TABLE table_name DROP COLUMN column_name;-- 修改列的数据类型
ALTER TABLE table_name ALTER COLUMN column_name TYPE new_datatype;-- 重命名列
ALTER TABLE table_name RENAME COLUMN column_name TO new_column_name;

6、数据操作

-- 插入数据
INSERT INTO table_name (column1, column2) VALUES (value1, value2);-- 查询数据
SELECT * FROM table_name;
SELECT column1, column2 FROM table_name WHERE condition;-- 更新数据
UPDATE table_name SET column1 = new_value WHERE condition;-- 删除数据
DELETE FROM table_name WHERE condition;

7、索引操作

-- 创建索引
CREATE INDEX index_name ON table_name (column1);-- 删除索引
DROP INDEX IF EXISTS index_name;

8、视图操作

-- 创建序列
CREATE SEQUENCE sequence_name;-- 获取序列的下一个值
SELECT nextval('sequence_name');-- 删除序列
DROP SEQUENCE IF EXISTS sequence_name;

9、权限操作

-- 授予用户对表的 SELECT 权限
GRANT SELECT ON table_name TO user_name;-- 授予用户对模式的所有权限
GRANT ALL PRIVILEGES ON SCHEMA schema_name TO user_name;-- 撤销用户对表的 INSERT 权限
REVOKE INSERT ON table_name FROM user_name;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/78788.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【unity游戏开发入门到精通——UGUI】文本输入控件 —— InputField旧控件

注意:考虑到UGUI的内容比较多,我将UGUI的内容分开,并全部整合放在【unity游戏开发——UGUI】专栏里,感兴趣的小伙伴可以前往逐一查看学习。 文章目录 前言1、文本输入控件2、InputField旧文本输入控件组成 一、InputField文本输入…

获得ecovadis徽章资格标准是什么?ecovadis评估失败的风险

EcoVadis徽章资格标准 EcoVadis徽章是对企业在可持续发展(环境、劳工与人权、商业道德、可持续采购)方面表现的认可。获得徽章需满足以下条件: 完成评估: 企业必须完成EcoVadis的问卷评估,并提交所有必要文件。 评分…

Python初学 有差异的知识点总结(一)

目录 一、基础语法规则 1.注释 2.代码编写 二、基础语法 1.变量 2.数据类型 3.数据类型的转换 (1)隐式转换 (2)显示转换 4.标识符 5.运算符 6.字符串 (1)定义 (2)拼接 …

Java面试场景深度解析

Java面试场景深度解析 在互联网大厂Java求职者的面试中,经常会被问到关于Java项目中的各种技术场景题。本文通过一个故事场景来展示这些问题的实际解决方案。 第一轮提问 面试官:马架构,欢迎来到我们公司的面试现场。请问您对Java内存模型…

【数据可视化艺术·应用篇】三维管线分析如何重构城市“生命线“管理?

在智慧城市、能源管理、工业4.0等领域的快速发展中,地下管线、工业管道、电力通信网络等“城市血管”的复杂性呈指数级增长。传统二维管理模式已难以应对跨层级、多维度、动态变化的管线管理需求。三维管线分析技术应运而生,成为破解这一难题的核心工具。…

Spring-全面详解(学习总结)

一:概述 1.1 为什么学 解决了两个主要问题 1. 2 学什么 1.3 怎么学 二:系统架构 作用:web开发、微服务开发、分布式系统开发 容器:用于管理对象 AOP:面向切面编程(不惊动原始程序下对其进行加强) 事…

企业架构之旅(2):解锁TOGAF ADM

文章目录 一、什么是 TOGAF ADM二、TOGAF ADM 的关键阶段架构愿景(Phase A)业务架构(Phase B)信息系统架构(Phase C)技术架构(Phase D)机会与解决方案(Phase E&#xff0…

MySQL 中 SQL 语句的详细执行过程

MySQL 中 SQL 语句的详细执行过程 当一条 SQL 语句在 MySQL 中执行时,它会经历多个阶段的处理。下面我将详细描述整个执行流程: 1. 连接阶段 (Connection) 客户端与 MySQL 服务器建立连接服务器验证用户名、密码和权限连接器负责管理连接状态和权限验…

ETL架构、数据建模及性能优化实践

ETL(Extract, Transform, Load)和数据建模是构建高性能数据仓库的核心环节。下面从架构设计、详细设计、数据建模方法和最佳实践等方面系统阐述如何优化性能。 一、ETL架构设计优化 1. 分层架构设计 核心分层: 数据源层:对接O…

快速上手Prism WPF 工程

1、Prism 介绍 ​定位​: Prism 是 ​微软推出的框架,专为构建 ​模块化、可维护的复合式应用程序​ 设计,主要支持 WPF、Xamarin.Forms、UWP 等平台。​核心功能​: ​模块化开发​:将应用拆分为独立模块&#xff0c…

React 单一职责原则:优化组件设计与提高可维护性

单一职责原则(SRP) 在 React 中,组件是构建 UI 的核心单位,而良好的组件设计是保证应用质量和可维护性的关键。单一职责原则是一种设计原则,也适用于 React 组件的开发。它强调每个组件应该只关注一个职责&#xff0c…

css网格布局Grid

一、网格布局适应场景 当涉及到的布局是二维布局(元素不止一行或者一列)且比较复杂的时候,可以用网格布局,看下面的一个例子: 上图上一个四行三列的网格,布局相对比较复杂。如果你用别的布局方案&#xff…

利用Python生成Xilinx FPGA ROM IP核 .coe初始化文件

以下是一个 Python 脚本,用于生成 Xilinx IP ROM 的.coe 格式初始化文件,假设ROM 深度为 1024,数据位宽为 32bit,使用随机的 32 位无符号数进行初始化: import random# 定义ROM的深度和数据位宽 rom_depth 1024 data…

8.2 段落格式

在word里,段落格式包括首行缩进、行间距、段前、段后等。LaTex同样支持这些功能。 段落间距 全局设置 段落间距用setlength命令来指定。如以下代码 \documentclass{article} \usepackage{ctex} \begin{document}\setlength{\parskip}{11em plus 1em minus 1em}\p…

OpenVLA-OFT

TL;DR 2025 年斯坦福提出的 OpenVLA 工作的续作 OpenVLA-OFT,优化 VLA 能够有效适应新的机器人平台和任务,优化的技术主要有并行解码、动作块处理、连续动作、L1 回归和(可选的)FiLM 语言调节 Paper name Fine-Tuning Vision-La…

SpringBoot 接口国际化i18n 多语言返回 中英文切换 全球化 语言切换

介绍 Spring Boot通过MessageSource接口来实现国际化,它可以加载不同的消息资源文件,通常是.properties格式。通过定义不同的语言文件(例如:messages_en.properties、messages_zh.properties等),可以根据用…

一个crackme例子

文件下载地址:https://download.csdn.net/download/m0_37567738/90713354 将cipher.txt文件内容解密后: 恭喜你解出了这一关,flag为 zjwa{36_23121136a28d0d15} 好了现在告诉你最后一层的获取方式, 在系统内找到 手机镜像的 ra…

账户解封无望?3步高效申诉取回亚马逊冻结资金

近年来,随着全球跨境电商市场的飞速扩张,亚马逊(Amazon)作为其中的巨头,持续强化其平台治理力度。然而,随之而来的是卖家账户因各种原因被冻结、关闭的事件频频发生。根据Marketplace Pulse发布的2024年第一…

【C++ Qt】快速上手 显⽰类控件(Label、LCDNumber、ProcessBar、CalendarWidget)

每日激励:“不设限和自我肯定的心态:I can do all things。 — Stephen Curry” 绪论​: 本文围绕Qt中常用的显示类控件展开,重点讲解了 QLabel(文本/图片显示)、QLCDNumber(数字显示&#xff0…

从困局到破局的AI+数据分析

从困局到破局的AI数据分析 困局:数据分析的四道高墙破局:AI赋能全流程数据分析远见:AI数据分析的革命性意义 数据是新时代的石油,人工智能是炼油厂。当两者强强联合,一场数据分析的革命正悄然发生。 多少次你面对Excel…