| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
gcmc
10年前发布

python操作mysql数据库代码

python操作mysql数据库的相关操作实例

# -*- coding: utf-8 -*-  #python operate mysql database  import MySQLdb      #数据库名称  DATABASE_NAME = ''  #host = 'localhost' or '172.0.0.1'  HOST = ''  #端口号  PORT = ''  #用户名称  USER_NAME = ''  #数据库密码  PASSWORD = ''  #数据库编码  CHAR_SET = ''      #初始化参数  def init():      global DATABASE_NAME      DATABASE_NAME = 'test'      global HOST      HOST = 'localhost'      global PORT      PORT = '3306'      global USER_NAME      USER_NAME = 'root'      global PASSWORD      PASSWORD = 'root'      global CHAR_SET      CHAR_SET = 'utf8'          #获取数据库连接  def get_conn():      init()      return MySQLdb.connect(host = HOST, user = USER_NAME, passwd = PASSWORD, db = DATABASE_NAME, charset = CHAR_SET)      #获取cursor  def get_cursor(conn):      return conn.cursor()      #关闭连接  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 create_table():      sql = '''      CREATE TABLE `student` (      `id` int(11) NOT NULL,      `name` varchar(20) NOT NULL,      `age` int(11) DEFAULT NULL,      PRIMARY KEY (`id`),      UNIQUE KEY `name` (`name`)      ) ENGINE=InnoDB DEFAULT CHARSET=utf8      '''      conn = get_conn()      cursor = get_cursor(conn)      result = cursor.execute(sql)      conn.commit()      close(cursor, conn)      return result      #查询表信息  def query_table(table_name):      if table_name != '':          sql = 'select * from ' + table_name          conn = get_conn()          cursor = get_cursor(conn)          result = cursor.execute(sql)          for row in cursor.fetchall():              print(row)              #for r in row:      #循环每一条数据                  #print(r)          close(cursor, conn)      else:          print('table name is empty!')      #插入数据  def insert_table():      sql = 'insert into student(id, name, age) values(%s, %s, %s)'      params = ('1', 'Hongten_a', '21')      conn = get_conn()      cursor = get_cursor(conn)      result = cursor.execute(sql, params)      conn.commit()      close(cursor, conn)      return result      #更新数据  def update_table():      sql = 'update student set name = %s where id = 1'      params = ('HONGTEN')      conn = get_conn()      cursor = get_cursor(conn)      result = cursor.execute(sql, params)      conn.commit()      close(cursor, conn)      return result      #删除数据  def delete_data():      sql = 'delete from student where id = %s'      params = ('1')      conn = get_conn()      cursor = get_cursor(conn)      result = cursor.execute(sql, params)      conn.commit()      close(cursor, conn)      return result      #数据库连接信息    def print_info():      print('数据库连接信息:' + DATABASE_NAME + HOST + PORT + USER_NAME + PASSWORD + CHAR_SET)      #打印出数据库中表情况  def show_databases():      sql = 'show databases'      conn = get_conn()      cursor = get_cursor(conn)      result = cursor.execute(sql)      for row in cursor.fetchall():          print(row)              #数据库中表情况  def show_tables():      sql = 'show tables'      conn = get_conn()      cursor = get_cursor(conn)      result = cursor.execute(sql)      for row in cursor.fetchall():          print(row)             def main():      show_tables()      #创建表      result = create_table()      print(result)      #查询表      query_table('student')      #插入数据      print(insert_table())      print('插入数据后....')      query_table('student')      #更新数据      print(update_table())      print('更新数据后....')      query_table('student')      #删除数据      delete_data()      print('删除数据后....')      query_table('student')      print_info()      #数据库中表情况      show_tables()              if __name__ == '__main__':      main()