zoukankan      html  css  js  c++  java
  • psycopg2简单插入和查询(直接查找为dataframe)

    导入与创建连接

    import psycopg2
    conn = psycopg2.connect(database='dbschool', user='postgres', password='admin', host='127.0.0.1', port='5432')
    cur = conn.cursor()
    

    connection

    主要方法

    connection提供了常用的数据库操作:
    commit():提交任何未提交的事务(transaction)到数据库。
    rollback():回滚。
    close():关闭数据库。如果关闭数据库时仍有未提交的事务,则执行回滚操作。
    

    cursor

    主要方法

    • execute(query, vars=None):执行SQL语句。
    • fetchall():获取所有查询结果,返回值为tuple列表。

    插入数据

    #单条插入
    cur.execute("INSERT INTO Employee VALUES('Gopher', 'China Beijing', 100, '2017-05-27')")
    #批量插入
    placeholders = ', '.join(['%s'] * df.shape[1])
    columns_str = ', '.join(columns)
    sql = "insert into {}({})values ({})".format('ceexam', columns_str, placeholders)
    cur.executemany(sql,df.values)
    

    注:

    批量插入支持格式:字典,python数组,numpy数组

    查询数据

    普通

    cur.execute("SELECT * FROM Employee")
    rows = cur.fetchall()
    for row in rows:
        print('name=' + str(row[0]) + ' address=' + str(row[1]) +
            ' age=' + str(row[2]) + ' date=' + str(row[3]))
    

    主要使用pd分析,直接导出为dataframe格式

    conn = psycopg2.connect(database='dbschool', user='postgres', password='admin', host='127.0.0.1', port='5432')
    sql_getall='select * from ceexam'
    df=pd.read_sql(sql=sql_getall,con=conn)
    
  • 相关阅读:
    MIN (Transact-SQL)【转】
    ROW_NUMBER() OVER函数的基本用法用法【转】
    读取文件中的内容
    Stopwatch 和TimeSpan介绍【转】
    TimeSpan类【转】
    Stopwatch 类【转】
    ToString()使用方法
    用c#读取文件内容中文是乱码的解决方法:
    vue实现购物车和地址选配(二)
    vue实现购物车和地址选配
  • 原文地址:https://www.cnblogs.com/yyjjtt/p/11255044.html
Copyright © 2011-2022 走看看