Extracting DB schema (newbie Q)

Jean-Michel Pichavant jeanmichel at sequans.com
Mon May 14 12:36:15 EDT 2012


Steve Sawyer wrote:
> Brand-new to Python (that's a warning, folks)
>
> Trying to write a routine to import a CSV file into a SQL Server
> table. To ensure that I convert the data from the CSV appropriately,
> I"m executing a query that gives me the schema (data column names,
> data types and sizes) from the target table.
>
> What I think I want to do is to construct a dictionary using the
> column names as the index value, and a list containing the various
> attributes (data type, lenghth, precision).
>
> If this is NOT a good approach (or if there is a better approach),
> please issue a dope-slap, ignore the rest of this post and set me
> straight.
>
> If this is a good approach, I ran into a problem populating the
> dictionary as I couldn't seem to figure out how to make the update()
> method work by passing the name property of the row object; I kept
> getting a "keyword can't be an expression" error.
>
> What I was able to make work was to construct the command as a string
> and run exec(<python command>), but seems there shoudl be a more
> direct way of updating the dictionary.
>
> TIA.
>   
Please post the exact traceback and the code associated with it.


Using csv.DictReader should allow you to do this in 3 lines, something like:

reader = csv.DictReader('acsvfile.csv')
myDict.update(reader)
uploadDictToDb(myDict)



More information about the Python-list mailing list