PostgreSQL
PostgreSQL 是一个功能强大的开源对象关系数据库系统,具有强大的数据完整性和扩展性。
特点
- 完全支持 ACID
- 支持复杂查询和高级特性
- 丰富的数据类型(JSON、数组、地理信息 等)
- 强大的索引功能
- 支持并发控制
安装
macOS (使用 Homebrew)
brew install postgresql@14
brew services start postgresql@14
基本命令
# 创建数据库
createdb mydb
# 连接数据库
psql mydb
# 查看数据库列表
\l
# 查看表列表
\dt
# 查看表结构
\d table_name
常用 SQL 示例
1. 表操作
-- 创建表
CREATE TABLE users (
id SERIAL PRIMARY KEY,
username VARCHAR(50) UNIQUE NOT NULL,
email VARCHAR(100) UNIQUE NOT NULL,
created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
profile JSONB
);
-- 创建索引
CREATE INDEX idx_users_email ON users(email);
CREATE INDEX idx_users_profile ON users USING GIN (profile);
-- 添加列
ALTER TABLE users ADD COLUMN last_login TIMESTAMP;
-- 删除表
DROP TABLE IF EXISTS users;
2. 数据操作
-- 插入数据
INSERT INTO users (username, email, profile)
VALUES
('john_doe', 'john@example.com', '{"age": 30, "city": "New York"}'),
('jane_doe', 'jane@example.com', '{"age": 25, "city": "London"}');
-- 更新数据
UPDATE users
SET profile = profile || '{"verified": true}'::jsonb
WHERE username = 'john_doe';
-- 删除数据
DELETE FROM users WHERE username = 'john_doe';