st.executeQuery("LOAD DATA INFILE '"+filename1+"' INTO TABLE stock.stockdata FIELDS TERMINATED BY ','LINES TERMINATED BY '\n'(SYMBOL,SERIES,OPEN,HIGH,LOW,CLOSE,LAST,PREVCLOSE,TOTTRDQTY,TOTTRDVAL,TIMESTAMP)");
java.sql.SQLException: File 'C:\ProgramData\MySQL\MySQL Server 5.5\Data\stock\cm01MAR2002bhav.csv' not found (Errcode: 2)
Your SQL statement is a "LOAD DATA INFILE" statement in which data is read from a text file by the server. If you want it to be read by the client it should be "LOAD DATA LOCAL INFILE". Using a server side statement like that requires a few things: the file must exists on the server and you need FILE privileges on the server. The client side statement is slower because it needs to send the data to the server but it does not require FILE privileges and the file only has to be on the client.