1. 连接到DB2数据库
要开始与DB2数据库交互,首先需要使用CONNECT命令连接到数据库。
CONNECT TO sample;
2. 显示当前连接的数据库
使用SHOW DATABASES命令可以查看当前连接的数据库。
SHOW DATABASES;
3. 切换到不同的数据库
如果需要切换到另一个数据库,可以使用USE命令。
USE mydatabase;
4. 创建数据库
使用CREATE DATABASE命令可以创建一个新的数据库。
CREATE DATABASE mynewdb;
5. 删除数据库
删除数据库需要使用DROP DATABASE命令。
DROP DATABASE mynewdb;
6. 显示所有表
使用SHOW TABLES命令可以列出当前数据库中的所有表。
SHOW TABLES;
7. 创建表
创建表需要使用CREATE TABLE命令,并指定表名和数据类型。
CREATE TABLE employees (
id INT,
name VARCHAR(100),
email VARCHAR(100)
);
8. 删除表
删除表需要使用DROP TABLE命令。
DROP TABLE employees;
9. 插入数据
使用INSERT INTO命令可以向表中插入数据。
INSERT INTO employees (id, name, email) VALUES (1, 'John Doe', 'john.doe@example.com');
10. 更新数据
使用UPDATE命令可以更新表中的数据。
UPDATE employees SET email = 'john.doe@newdomain.com' WHERE id = 1;
11. 删除数据
使用DELETE FROM命令可以删除表中的数据。
DELETE FROM employees WHERE id = 1;
12. 查询数据
使用SELECT命令可以查询表中的数据。
SELECT * FROM employees;
13. 过滤数据
使用WHERE子句可以过滤查询结果。
SELECT * FROM employees WHERE name = 'John Doe';
14. 排序数据
使用ORDER BY子句可以对查询结果进行排序。
SELECT * FROM employees ORDER BY name;
15. 限制结果集
使用LIMIT子句可以限制查询结果的数量。
SELECT * FROM employees LIMIT 5;
16. 别名
使用AS关键字为表或列设置别名。
SELECT e.name AS employee_name FROM employees e;
17. 联合查询
使用UNION关键字可以将多个查询结果合并。
SELECT id FROM employees WHERE id < 5
UNION
SELECT id FROM customers WHERE id < 5;
18. 子查询
子查询可以嵌套在其他查询中。
SELECT * FROM employees WHERE id IN (SELECT manager_id FROM departments);
19. 聚合函数
使用聚合函数如SUM(), AVG(), COUNT(), MIN(), MAX()可以对数据进行统计。
SELECT SUM(salary) AS total_salary FROM employees;
20. 窗口函数
窗口函数允许对查询结果进行分区和排序。
SELECT id, salary, RANK() OVER (ORDER BY salary DESC) AS rank FROM employees;
21. 创建视图
创建视图可以简化复杂查询。
CREATE VIEW employee_view AS
SELECT id, name, email FROM employees;
22. 删除视图
删除视图需要使用DROP VIEW命令。
DROP VIEW employee_view;
23. 创建索引
使用CREATE INDEX命令可以创建索引以加快查询速度。
CREATE INDEX idx_email ON employees (email);
24. 删除索引
删除索引需要使用DROP INDEX命令。
DROP INDEX idx_email;
25. 复制表
使用CREATE TABLE AS SELECT命令可以复制表结构。
CREATE TABLE employees_copy AS SELECT * FROM employees;
26. 复制数据
使用INSERT INTO ... SELECT命令可以复制数据。
INSERT INTO employees_copy SELECT * FROM employees;
27. 检查表结构
使用DESCRIBE命令可以查看表结构。
DESCRIBE employees;
28. 检查索引
使用SHOW INDEX命令可以查看表上的索引。
SHOW INDEX FROM employees;
29. 查询统计信息
使用EXPLAIN命令可以查看查询的执行计划。
EXPLAIN SELECT * FROM employees WHERE name = 'John Doe';
30. 事务控制
使用BEGIN, COMMIT, ROLLBACK等命令进行事务控制。
BEGIN;
UPDATE employees SET salary = salary * 1.1 WHERE id = 1;
COMMIT;
31. 设置隔离级别
使用SET TRANSACTION ISOLATION LEVEL命令可以设置事务的隔离级别。
SET TRANSACTION ISOLATION LEVEL READ COMMITTED;
32. 查看当前会话设置
使用SHOW PARAMETERS命令可以查看会话设置。
SHOW PARAMETERS;
33. 修改会话设置
使用SET命令可以修改会话设置。
SET CURRENT_DATE = '2023-01-01';
34. 查看数据库版本
使用DISPLAY DATABASE PRODUCT命令可以查看数据库版本。
DISPLAY DATABASE PRODUCT;
35. 查看系统表
使用SELECT * FROM SYSIBM.SYSTABLES;命令可以查看系统表。
SELECT * FROM SYSIBM.SYSTABLES;
36. 查看系统索引
使用SELECT * FROM SYSIBM.SYSINDEXES;命令可以查看系统索引。
SELECT * FROM SYSIBM.SYSINDEXES;
37. 查看系统表空间
使用SELECT * FROM SYSIBM.SYSTABLESPACES;命令可以查看系统表空间。
SELECT * FROM SYSIBM.SYSTABLESPACES;
38. 查看系统用户
使用SELECT * FROM SYSIBM.SYSSYSTEMUSERS;命令可以查看系统用户。
SELECT * FROM SYSIBM.SYSSYSTEMUSERS;
39. 创建用户
使用CREATE USER命令可以创建新用户。
CREATE USER mynewuser IDENTIFIED BY mypassword;
40. 删除用户
使用DROP USER命令可以删除用户。
DROP USER mynewuser;
41. 授予权限
使用GRANT命令可以授予权限。
GRANT SELECT ON employees TO mynewuser;
42. 撤销权限
使用REVOKE命令可以撤销权限。
REVOKE SELECT ON employees FROM mynewuser;
43. 查看当前用户
使用SHOW USER命令可以查看当前用户。
SHOW USER;
44. 查看角色
使用SHOW ROLES命令可以查看角色。
SHOW ROLES;
45. 创建角色
使用CREATE ROLE命令可以创建新角色。
CREATE ROLE mynewrole;
46. 删除角色
使用DROP ROLE命令可以删除角色。
DROP ROLE mynewrole;
47. 分配角色
使用GRANT命令可以分配角色。
GRANT mynewrole TO mynewuser;
48. 撤销角色
使用REVOKE命令可以撤销角色。
REVOKE mynewrole FROM mynewuser;
49. 查看数据库配置
使用DISPLAY DATABASE CONFIGURATION命令可以查看数据库配置。
DISPLAY DATABASE CONFIGURATION;
50. 修改数据库配置
使用ALTER DATABASE CONFIGURATION命令可以修改数据库配置。
ALTER DATABASE CONFIGURATION SET MAXPARTITIONS TO 1000;
这些命令行技巧可以帮助您从入门到精通地掌握DB2数据库操作。通过不断练习和探索,您将能够更有效地管理数据库,解决各种问题。
