-1
import MySQLdb
import re

def write():
    file = open('/home/fixstream/Desktop/test10.txt', 'r')
    print file.read()
    file.close()
write()

Above code i have, now i want to store the text file into mysql db. I am new to python as well as database. So anyone can help me with this?

kecer
  • 3,031
  • 2
  • 21
  • 24
user3804186
  • 41
  • 1
  • 2
  • 3
  • You've written barely enough code to open the file. But there's is no code to parse it, or to connect to the database. Look up a few examples and come back with an example of an objective problem you are having. –  Aug 12 '14 at 20:57

1 Answers1

11

I suggest you reading this MySQLdb tutorial. First, you need to store content of the file in a variable. Then it's simply connecting to your database (which is done as you can see in the link) and then executing INSERT query. Prepared statements are done in similar way as common string formatting in python.

You need something like this:

import MySQLdb

db = MySQLdb.connect("localhost","user","password","database")
cursor = db.cursor()

file = open('/home/fixstream/Desktop/test10.txt', 'r')
file_content = file.read()
file.close()

query = "INSERT INTO table VALUES (%s)"

cursor.execute(query, (file_content,))

db.commit()
db.close()

Note the comma after file_content - this ensures the second argument for execute() is a tuple. Also note db.commit() which ensures writing changes.

If you need further explanation, ask.

Community
  • 1
  • 1
kecer
  • 3,031
  • 2
  • 21
  • 24