• python数据库调用


    #!/usr/bin/python
    #coding=utf-8


    import MySQLdb
    import sys

    DB_USERNAME='scto'
    DB_PASS='xjtb2016'
    #DB_CONF_PATH=
    DB_HOST='127.0.0.1'
    DB_PORT='3306'
    DB_BASENAME='test'
    DB_CHAR_SET='utf8'

    #连接数据库
    def get_connect():
    return MySQLdb.connect(host=DB_HOST,user=DB_USERNAME,passwd=DB_PASS,db=DB_BASENAME,charset=DB_CHAR_SET)

    #获取cursor
    def get_cursor(conn):
    return conn.cursor()
    #打印
    def show_print(conn,sql):
    cursor = get_cursor(conn)
    re = cursor.execute(sql)
    for row in cursor.fetchall():
    # print "%s" %row
    print(row)
    # close(cursor,conn)

    #关闭数据库连接
    def conn_close(conn):
    if conn != None:
    conn.close()
    #关闭cursor方法
    def cursor_close(cursor):
    if cursor !=None:
    cursor.close()

    #全部服务关闭
    def close(cursor,conn):
    cursor_close(cursor)
    conn_close(conn)

    #查看数据库表情况
    def get_databases(conn):
    show_print(conn,"show databases")

    #查看数据库中的表
    def get_tables(conn):
    # sql="show tables"
    show_print(conn,"show tables")

    #查看数据库启动时间
    def get_mysqluptime(conn):
    show_print(conn,"show global status like 'uptime';")

    #插入表数据
    def insert_table(conn):
    print "欢迎使用插入表数据"
    print "<<<----------------------------"
    # sql = "insert into hh(id,name,age) values(%s,%s,%s)"
    sql = "insert into hh(id,info) values(2,'hej')"
    params = ('2','hej','22')
    print "---------------------------->>>>"
    cursor = get_cursor(conn)
    cursor.execute(sql)
    # result = cursor.execute(sql,params)
    conn.commit()
    # close(cursor,conn)
    # return result
    #查看表中相关数据
    def query_table(conn,table):
    if table != ' ':
    sql = 'select * from ' + table
    print "您要查看的具体语句为: %s" %sql
    show_print(conn,sql)
    else:
    print ("没有您想查看的表 "+table)
    #更新表数据
    def update_table():
    sql= 'update student set name = %s where id = 1'
    params = ("Hehaha")
    conn = get_connect()
    cursor = get_cursor(conn)
    result = cursor.execute(sql, params)
    conn.commit()
    close(cursor, conn)
    return result

    #创建表
    def create_table(tablename):
    if tablename != '':

    conn = get_connect()
    cursor = get_cursor(conn)
    cursor.execute('create table '+tablename+'(id int,info varchar(20))')
    conn.commit()
    else:
    print ("您没有输入您想创建的数据库表名 "+tablename)
    #cursor_close(cursor)

    #查看连接信息

    def print_conn_info():
    print ("数据库连接数据为: "+ DB_HOST+' ' + DB_USERNAME +' ' + DB_PASS +' '+ DB_BASENAME)

    def delete_date(conn,tablename,datasize):
    cursor = get_cursor(conn)
    cursor.execute('delete from '+tablename+' where id='+datasize)
    conn.commit()

    def get_inputinfo():
    print "请输入: "
    result=raw_input()
    print ("您的输入为: "+result)
    return result


    def main():
    #获取标准输入
    result=get_inputinfo()

    #连接数据库
    conn=get_connect()
    #查看数据库表情况
    get_databases(conn)
    #查看数据库中的表
    get_tables(conn)
    #查看数据库启动时间
    get_mysqluptime(conn)
    #插入表数据
    insert_table(conn)
    print "请输入您要查询的数据库表名"
    sql=raw_input()
    #查看表中相关数据
    query_table(conn,sql)
    query_table(conn,"student")
    #修改数据
    update_table()
    print "请输入您要创建的数据库表名"
    tablename=raw_input()
    #创建表
    create_table(tablename)

    #查看连接信息
    print_conn_info()
    #删除指定表中的指定数据
    print "请输入您要删除的数据库表名 "
    tablename=raw_input()
    print "请输入您要删除的数据"
    datasize=raw_input()
    delete_date(conn,tablename,datasize)

    conn_close(conn)

    if __name__=='__main__':
    main()

  • 相关阅读:
    Puzzle, ACM/ICPC World Finals 1993, UVa227
    Puzzle, ACM/ICPC World Finals 1993, UVa227
    All in All, UVa 10340
    All in All, UVa 10340
    Box, ACM/ICPC NEERC 2004, UVa1587
    Box, ACM/ICPC NEERC 2004, UVa1587
    动态文本输出
    形态分析法
    粒子系统
    思维
  • 原文地址:https://www.cnblogs.com/st12345/p/6646578.html
Copyright © 2020-2023  润新知