ITPub博客

首页 > 数据库 > > GaussDB 100 基于Python开发(3)

GaussDB 100 基于Python开发(3)

作者:GaussDB_数据库 时间:2020-02-20 11:19:36 0 删除 编辑

执行SQL语句

执行SQL前,需要先通过调用Connection类的cursor方法获取到cursor,然后通过cursor调用execute方法执行SQL语句。

如果需要获取结果集,可通过Cursor类中的fetch系列的方法进行获取。

函数原型

  • 执行SQL语句并自动提交。

    #创建cursor
    c=conn.cursor()
    #设置自动提交
    conn.autocommit(True)
    #调用execute方法创建表
    c.execute("create table tablename(relational_properties)")
    #调用execute方法插数据
    c.execute("insert into tablename values(expression [ , ... ])")
    #关闭cursor
    c.close()
  • SQL语句回滚。手动提交。

    conn.rollback()
    手动提交SQL语句。
  • conn.commit()
    执行SQL语句并获取元组。
  • #调用execute方法获取查询结果
    
    c.execute("select * from tablename")
    #用fetchall方法获取所有结果
    row =c.fetchall()

示例

  • 执行SQL语句并自动提交

    #创建cursor
    c=conn.cursor()
    #设置自动提交
    conn.autocommit(True)
    #调用execute方法创建表
    c.execute("create table testexecute(a int,b char(10),c date)")
    #调用execute方法插ru数据
    c.execute("insert into testexecute values(1,'s','2012-12-13')")
    #关闭cursor
    c.close()
    #关闭数据库连接
    conn.close()
  • 执行SQL语句并回滚或手动提交。

    #加载pyzenith模块
    import pyzenith
    #以gaussdba用户连接数据库,密码gaussdb_123,端口号1888。
    host='192.168.0.1'
    username='gaussdba'
    password='gaussdb_123'
    port='1888'

    conn=pyzenith.connect(host,username,password,port)
    #创建cursor
    c=conn.cursor()
    #调用execute方法创建表
    c.execute("create table testexecute(a int,b char(10),c date)")
    #调用execute方法插ru数据
    c.execute("insert into testexecute values(1,'s','2012-12-13')")
    #回滚事务 或 提交事务
    conn.rollback() 或 conn.commit()
    #关闭cursor
    c.close()
    #关闭数据库连接
    conn.close()
  • 执行SQL语句并获取元组。

    #加载pyzenith模块
    import pyzenith
    #以gaussdba用户连接数据库,密码gaussdb_123,端口号1888。
    host='192.168.0.1'
    username='gaussdba'
    password='gaussdb_123'
    port='1888'

    conn=pyzenith.connect(host,username,password,port)
    #创建cursor
    c=conn.cursor()
    #调用execute方法创建表
    c.execute("create table testexecute(a int,b char(10),c date)")
    #调用execute方法插ru数据
    c.execute("insert into testexecute values(1,'s','2012-12-13')")
    #调用execute方法获取查询结果
    c.execute("select * from testexecute")
    #用fetchall方法获取所有结果
    row =c.fetchall()
    #关闭cursor
    c.close()
    #关闭数据库连接
    conn.close()


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3134190/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: SQL参考-系统操作
请登录后发表评论 登录
全部评论

注册时间:2020-01-06

  • 博文量
    2907
  • 访问量
    19306