PostgreSQL数据库

一、PostgreSQL数据库简介

PostgreSQL 是一个免费的对象-关系数据库管理系统(ORDBMS)。

二、psql

psql是PostgreSQL的一个命令行交互式客户端工具,它具有非常丰富的功能,类似于Oracle的命令行工具sqlplus。

psql命令:

(1)查看有哪些数据库

        切换su - postgres用户(直接在终端输入psql也可实现),在postgres用户下输入\l     PostgreSQL数据库_第1张图片

 (2)连接指定服务器上的数据库

         psql -h IP地址或数据库名 -p 端口 -U 用户名 -d 数据库名

PostgreSQL数据库_第2张图片

(3)查看数据库中的表

         \d

PostgreSQL数据库_第3张图片

(4)查看表的具体信息

\d 表名

 PostgreSQL数据库_第4张图片

(5)创建表

命令:CREATE TABLE 表名(字段1 字段1的数据类型,字段2 字段2的数据类型,字段3 字段3的数据类型,···);

PostgreSQL数据库_第5张图片

(6) 删除某个表

drop table 表名;

PostgreSQL数据库_第6张图片

(7)在表中每次插入一条数据

命令:INSERT INTO 表名 (字段1,字段2,字段3,···) VALUES (字段1的值,字段2 的值,字段3的值,···);

(8)查询表中的所有数据

SELECT *  FROM 表名;

 (9)查询表中特定条件的数据记录

SELECT * FROM 表名 WHERE 字段名 = 字段值;

PostgreSQL数据库_第7张图片

(10)统计表中的所有记录总数

SELECT COUNT(*) AS "RECORDS" FROM 表名;

(11)更新表中某个ID的某个字段的值

UPDATE 表名 SET 字段名=字段更新的值 WHERE ID =ID 号;

PostgreSQL数据库_第8张图片

(12) 同时更新表中某个ID的多个字段的值

UPDATE 表名 SET 字段1=字段1更新的值,字段2=字段2更新的值 WHERE ID =ID号;

PostgreSQL数据库_第9张图片

(13)同时更行表中多个字段的值(不区分ID)

UPDATE 表名 SET 字段1=字段1更新的值,字段2=字段2更新的值;

(14)按特定条件删除表中的数据

DELETE FROM 表名 WHERE 字段名=字段值;

(15)查看当前时间

SELECT CURRENT_TIMESTAMP;

PostgreSQL数据库_第10张图片

(16)找出表中某个字段不为空的记录

SELECT * FROM 表名 WHERE 字段 IS NOT NULL;

(17)SELECT * FROM 表名 WHERE 字段 IS NULL;

 (18)从表的某行开始获取N条数据,一般通过该命令实现分页功能

以下语句表示:从表t_host的0行开始获取20条数据。

SELECT "t1"."id", "t1"."create_at", "t1"."update_at", "t1"."sn", "t1"."ip", "t1"."ipmi", "t1"."ipmi_user", "t1"."ipmi_password", "t1"."card_type", "t1"."power_status", "t1"."stage", "t1"."task_id", "t1"."create_by", "t1"."update_by" FROM "t_host" AS "t1" LIMIT 20 OFFSET 0

三、数据库中运算符相关操作

  • 算术运算符

PostgreSQL数据库_第11张图片

  • 比较运算符 

PostgreSQL数据库_第12张图片 

  • 逻辑运算符  PostgreSQL数据库_第13张图片
  •  位运算符

PostgreSQL数据库_第14张图片 

四、使用python调用psql语句

python包:psycopg2

(1)连接数据库

(2)查看当前数据库中的表

(3)创建表

 (4)删除某个表

(5)在表中每次插入一条数据

(6)查询表中的所有数据 

PostgreSQL数据库_第15张图片

(7)查询表中特定条件的数据记录

(8)统计表中所有记录总数

(9)查询表中某个字段不为空的记录

(10)查询表中某个字段为空的记录

(11)更新表中某个ID的某个字段的值 

(12)同时更新表中某个ID的多个字段的值

(13)同时更行表中多个字段的值(不区分ID)

 

(14)按特定条件删除表中的数据

 

(15)查看当前时间

 

 五、使用orm调用psql语句 

orm简介:即将SQL语句使用类来实现。

数据库的表中的一行数据代表一个model类的实例。

PostgreSQL数据库_第16张图片 

PostgreSQL数据库_第17张图片

python包:peewee

安装:pip install peewee

           pip install pymysql

PostgreSQL数据库_第18张图片

(1)连接数据库

备注:db.connect() 只有在用到的时候才需要打开连接

(2)查看当前数据库中的表

(3)查看某个表的具体信息

 

(4) 创建表(使用类来实现数据库中的表)

PostgreSQL数据库_第19张图片

 (5)删除某个表

(6) 在表中每次插入一条数据

PostgreSQL数据库_第20张图片

(7) 在表中一次插入多条数据

PostgreSQL数据库_第21张图片

(8)查询表中所有数据

PostgreSQL数据库_第22张图片 

将以上数据库中查询到的数据使用字典的数据类型展示:

print(list(notes.dicts()))

(9) 查询表中特定条件的数据记录

PostgreSQL数据库_第23张图片

(10) 统计表中的所有记录总数

(11) 更新表中某个ID的某个字段的值

(12) 同时更新表中某个ID的多个字段的值

(13) 同时更行表中多个字段的值(不区分ID)

(14) 按特定条件删除表中的数据

(15)关闭数据库连接

(16) 使用sql()方法显示生成的 SQL 语句

(17) 使用order_by()对检索到的实例进行排序

PostgreSQL数据库_第24张图片

(18) 获取表中的某几行数据

PostgreSQL数据库_第25张图片 

 参考文档:python | Peewee 教程 | 犀牛的博客

 

 

你可能感兴趣的:(数据库,postgresql)