Postgres insert query max length or number of VALUES parameters
The answer to your question is that it depends on your system.  Eventually your client or server will run out of memory trying to process a huge statement. typical unimpressive hardware can handle a million (very skinny) rows without trouble.

The answer to your problem is that most widely used libraries have a way to use COPY...FROM STDIN which can be run from the client.  If you use psql, that mechanism is \copy.  In Perl's DBD::Pg, it is pg_putcopydata.