MySQL Insert

2008-07-15 Thread maestroQC
Hi,

Its one of those days. I cannot solve this. Any help would be greatly
appreciated!
When I execute this:

class Db(object):
def insertAccount(self, date, accountNumber, description,
openingBalance):
dec = decimal.Decimal(openingBalance)
db = MySQLdb.connect(host="localhost", user="dumb",
passwd="dumber", db="rdc")
cursor = db.cursor()
cursor.execute("INSERT INTO es_accounts (dateCreated,
accountNumber, description, openingBalance) VALUES (%s, %s, %s, %d)",
(date, accountNumber, description, dec))

I get this error:
Traceback (most recent call last):
  File "main.py", line 59, in 
main()
  File "main.py", line 40, in main
dbObj.insertAccount(dateTo, item[0], item[1], item[8])
  File "C:\projects\workspace\INYR_ES_0.1\src\db.py", line 19, in
insertAccount
cursor.execute("INSERT INTO es_accounts (dateCreated,
accountNumber, description, openingBalance) VALUES (%s, %s, %s
, %d)", (date, accountNumber, description, dec))
  File "c:\python25\lib\site-packages\MySQLdb\cursors.py", line 151,
in execute
query = query % db.literal(args)
TypeError: int argument required

My table is defined as:
CREATE TABLE es_accounts (
id int(6) not null auto_increment,
dateCreated date DEFAULT '-00-00',
accountNumber int(6) not null,
description varchar(255) not null,
openingBalance decimal(15,8) NOT NULL DEFAULT 0.,
primary key (id)
);

TIA
--
http://mail.python.org/mailman/listinfo/python-list


Re: MySQL Insert

2008-07-15 Thread maestroQC
Thanks for the information.
However I must stick to decimal since I'm dealing with monetary
values.
I loose the decimals with int and float has only supports one decimal
place.

I tried as you suggested to use the %s instead of the %d to no avail.
--
http://mail.python.org/mailman/listinfo/python-list


Re: MySQL Insert

2008-07-16 Thread maestroQC
Thanks to all for your time and patience with this!
The insert is working fine based on the suggestions in this thread.

I now have another problem that should be resolved with a regular
expression to remove currency formatting before inserting into the db.
--
http://mail.python.org/mailman/listinfo/python-list