Postgre是功能非常强大的数据库管理系统,而且全部开源。
在很多方面都比MySQL强,如复杂SQL的执行、存储过程、触发器、索引。
同时PostgreSQL是多进程的,而MySQL是线程的。
它的不足之处在于
1. 导入:
import psycopg2
这个库看起来很奇怪,但是理解之后就会发现容易记忆。
psyco是亢奋、精神病的意思,而pg可以理解为postgre的缩写,是不是觉得开发者是个精力充沛的geek?
2 自然是二代版本,现在已经出来pyscopg3, 但是由于笔者的习惯,这里还是以psycopg2作为案例。
2. 连接数据库
psycopg2.connect(datebase = ```, user = ```, password = ```, host = ```)
连接记住connect,后面加上四个数据库必须知道的【库名、用户名、密码、域名】
future_database = {
'database' : 'cc',
'user' : 'ccc',
'password' : '·······',
'host' : '10.21···'
}
conn = psycopg2.connect(database = future_database['database'], user = future_database['user'],password = future_database['password'], host = future_database['host'])
3. 执行
cursor = conn.cursor()
cursor.execute("SELECT ···")
dataall = cursor.fetchall()
4. 将data转换为dataframe
columnDes = self.cursor.description # 获取连接对象的描述信息
columnNames = [columnDes[i][0] for i in range(len(columnDes))]
df = pd.DataFrame([list(i) for i in dataall], columns=columnNames)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)