On Feb 1, 2008, at 5:33 PM, Venks wrote:
Hi, I am trying to copy some data from MySQL to Postgres using Ruby. This is NOT a MySQL to PostgreSQL conversion project. I need to read the data from a MySQL database and load it into PostgreSQL database. How do I handle "nil" in ruby and convert them into NULL so that I can insert NULL into INT columns instead of empty values? In short I am getting the following popular error: invalid input syntax for integer: "" (PGError) This is because when I read data from MySQL, all the NULL values are converted into "nil" in Ruby and inserting them into Postgres is an issue because "nil" is being transmitted as "" (empty) and not as SQL NULL.
That all sounds perfectly reasonable up until the "nil" being translated to the empty string. It sounds like the issue is the ruby module you're using to talk to postgresql, or your use of it. The docs for Ruby DBI suggest that nil is converted into SQL null correctly, so you're going to have to be more specific about what you're doing and what problem you're seeing, I think. Cheers, Steve ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match