一款功能强大的开源关系型数据库系统,以其可扩展性、可靠性和对 SQL 标准的兼容性而闻名。
1.00¥ 原价为:1.00¥。0.00¥当前价格为:0.00¥。
PostgreSQL,也被称为 Postgres,是一款强大、开源的关系型数据库管理系统 (RDBMS)。它以其可靠性、数据完整性、广泛的功能集、可扩展性和对 SQL 标准的高度兼容性而闻名。
主要特点:
核心功能:
本部分描述在 PostgreSQL 服务已经运行的前提下,用户进行基本数据库操作的流程。
连接到 PostgreSQL 服务器: 使用 PostgreSQL 提供的客户端工具 psql
连接到服务器。您需要指定服务器地址、端口、数据库名称、用户名等信息。
psql -h <服务器地址> -p <端口号> -d <数据库名称> -U <用户名>
例如,连接到本地服务器上的 mydatabase
数据库,使用用户 myuser
:
psql -h localhost -p 5432 -d mydatabase -U myuser
系统可能会提示您输入密码。
创建数据库 (如果需要): 如果您需要操作的数据库不存在,可以使用 CREATE DATABASE
命令创建。
CREATE DATABASE mynewdatabase;
创建表 (Create Table): 使用 CREATE TABLE
命令定义表的结构,包括列名、数据类型、约束等。
CREATE TABLE users (
id SERIAL PRIMARY KEY,
username VARCHAR(50) UNIQUE NOT NULL,
email VARCHAR(100) NOT NULL,
created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);
插入数据 (Insert Data): 使用 INSERT INTO
命令向表中插入新的数据行。
INSERT INTO users (username, email) VALUES ('john_doe', 'john.doe@example.com');
INSERT INTO users (username, email) VALUES ('jane_doe', 'jane.doe@example.com');
查询数据 (Select Data): 使用 SELECT
命令从表中检索数据。可以指定要查询的列、使用 WHERE
子句进行条件过滤、使用 ORDER BY
子句进行排序等。
SELECT * FROM users;
SELECT username, email FROM users WHERE id = 1;
SELECT * FROM users ORDER BY created_at DESC;
更新数据 (Update Data): 使用 UPDATE
命令修改表中已有的数据。通常需要使用 WHERE
子句指定要更新的行。
UPDATE users SET email = 'john.new@example.com' WHERE username = 'john_doe';
删除数据 (Delete Data): 使用 DELETE FROM
命令从表中删除数据行。务必谨慎使用,通常需要使用 WHERE
子句指定要删除的行。
DELETE FROM users WHERE id = 2;
修改表结构 (Alter Table): 使用 ALTER TABLE
命令修改表的结构,例如添加列、删除列、修改列的数据类型、添加约束等。
ALTER TABLE users ADD COLUMN full_name VARCHAR(100);
ALTER TABLE users ALTER COLUMN email TYPE VARCHAR(120);
ALTER TABLE users ADD CONSTRAINT email_unique UNIQUE (email);
删除表 (Drop Table): 使用 DROP TABLE
命令删除整个表。请谨慎使用,删除后数据将无法恢复。
DROP TABLE users;
断开连接: 在 psql
交互式界面中,可以使用 \q
命令或按下 Ctrl + D
断开与 PostgreSQL 服务器的连接。
假设我们已经连接到名为 mydatabase
的 PostgreSQL 数据库。
创建 products
表:
CREATE TABLE products (
id SERIAL PRIMARY KEY,
name VARCHAR(100) NOT NULL,
price DECIMAL(10, 2) NOT NULL,
stock_quantity INTEGER DEFAULT 0
);
插入一些产品数据:
INSERT INTO products (name, price, stock_quantity) VALUES ('Laptop', 1200.50, 10);
INSERT INTO products (name, price, stock_quantity) VALUES ('Mouse', 25.99, 50);
INSERT INTO products (name, price, stock_quantity) VALUES ('Keyboard', 75.00, 25);
查询所有价格大于 50 的产品名称和价格:
SELECT name, price FROM products WHERE price > 50.00;
预期输出:
name | price
----------+---------
Laptop | 1200.50
Keyboard | 75.00
(2 rows)
将名为 ‘Mouse’ 的产品的库存增加 10:
UPDATE products SET stock_quantity = stock_quantity + 10 WHERE name = 'Mouse';
查询更新后的 ‘Mouse’ 的库存:
SELECT name, stock_quantity FROM products WHERE name = 'Mouse';
预期输出:
name | stock_quantity
-------+----------------
Mouse | 60
(1 row)
查询库存数量小于 20 的产品名称和库存:
SELECT name, stock_quantity FROM products WHERE stock_quantity < 20;
预期输出:
name | stock_quantity
---------+----------------
Laptop | 10
(1 row)
这个简单的实例演示了如何在 PostgreSQL 中创建表、插入数据、查询数据、更新数据等基本操作。在实际应用中,您会使用更复杂的 SQL 查询、事务处理、索引优化等高级功能。