数据库连接
连接数据库前,请先确认以下事项:
#!/usr/bin/python # -*- coding: UTF-8 -*- import MySQLdb # 打开数据库连接 db = MySQLdb.connect("localhost","testuser","test123","TESTDB" ) # 使用cursor()方法获取操作游标 cursor = db.cursor() # 使用execute方法执行SQL语句 cursor.execute("SELECT VERSION()") # 使用 fetchone() 方法获取一条数据库。 data = cursor.fetchone() print "Database version : %s " % data # 关闭数据库连接 db.close()
创建数据库表
如果数据库连接存在我们可以使用execute()方法来为数据库创建表,如下所示创建表EMPLOYEE:
#!/usr/bin/python # -*- coding: UTF-8 -*- import MySQLdb # 打开数据库连接 db = MySQLdb.connect("localhost","testuser","test123","TESTDB" ) # 使用cursor()方法获取操作游标 cursor = db.cursor() # 如果数据表已经存在使用 execute() 方法删除表。 cursor.execute("DROP TABLE IF EXISTS EMPLOYEE") # 创建数据表SQL语句 sql = """CREATE TABLE EMPLOYEE ( FIRST_NAME CHAR(20) NOT NULL, LAST_NAME CHAR(20), AGE INT, SEX CHAR(1), INCOME FLOAT )""" cursor.execute(sql) # 关闭数据库连接 db.close()
基本的知道后就直接粘贴源码了
#coding=utf-8 import MySQLdb #MySQL的连接 conn = MySQLdb.connect( host='localhost', port=3306, user='root', passwd='12345abcde', db='test', charset='utf8', ) cur = conn.cursor() f = open("matches.txt", "r") while True: line = f.readline() if line: #处理每行\n line = line.strip('\n') line = line.split(":") print line cur.execute( "insert into meacthdata(first_name,last_name,number1,number2) values(%s,%s,%s,%s)", [line[0], line[1], line[2], line[3]]) else: break f.close() cur.close() conn.commit() conn.close()