MySQLÊý¾Ý°ü¹ý´ó
ÎÒÓÃÒ»¸öÑ»·ÍùÊý¾Ý¿âÀïÃæ´æÎļþ£¬±¾À´¿ÉÒÔ×÷ΪÎļþ´æ·ÅÊý¾Ý¿âÀïÃæÖ»·ÅÎļþµÄλÖõ쬵«ÊÇûÓа취×âµÄ·þÎñÆ÷ÍøÒ³¿Õ¼ä´óСÓÐÏÞÖÆÊý¾Ý¿âûÓÐÏÞÖÆ¡£Óï¾äÊÇÕâÑùµÄ public static final DataBase.MAXSIZE=1024*512; for(int i=0;i <size;i+=DataBase.MAXSIZE){ System.out.println(i); PreparedStatement sql=con.prepareStatement("insert into FILE_DATA_TABLE(DATA_SIZE,DATA_CON,FILE_ID)values(?,0,?);"); if((size-i)>DataBase.MAXSIZE){ sql.setInt(1, DataBase.MAXSIZE); sql.setBinaryStream(2, in, DataBase.MAXSIZE); }else{ sql.setInt(1,in.available()-i); sql.setBinaryStream(2, in,in.available()-i); break; } sql.setInt(2, this.fILE_ID); sql.execute(); sql=null; } µ«ÊÇ×Ü»áÅ׳ö Packet for query is too large (6921195 > 1048576). You can change this value on the server by setting the max_allowed_packet' variable. ¸÷λÓÐûÓнâ¾ö°ì·¨£¿
ÒýÓà mysqlÊý¾Ý¿âÉèÖÃÁËÏÞÖÆ, max_allowed_packet = 1048576 ËùÒÔ£¬±ØÐëÐÞ¸ÄmysqlÉèÖ㺠[mysqld] max_allowed_packet=16M Õâ¸öûÓа취¸Ä°¡£¬ËûÃǵķþÎñÆ÷²»Èøģ¬ÎÒʵÔÚºÜÓôÃÆ ¶¥Ò»¸ö£¬²»Ì«Á˽â
Ïà¹ØÎÊ´ð£º
ÓÃjsp×ö¶«Î÷¸øÍêÈ«²»¶®mysqlµÄÈËÓ㬿ÉÊDZ¸·ÝʱֻÓпÕÎļþ£¬ÕâÊÇʲôÇé¿ö£¬ ×îºÃÓÐÔ´´úÂ룬лл Æäʵ±¸·ÝµÄ¹ý³ÌÎÒÏë´ó¸ÅÊÇÕâÑùµÄ£º ½«±íAÖеÄÊý¾Ý·Åµ½ArrayListÖУ¬È»ºó½«Õâ¸öArrayListÖеÄÊý¾ÝÔÙ´æµ½±íBÖС£ ......
Ò»¸öÐÐÒµÍøÕ¾£¬ÒªÊµÏֵŦÄÜÒªÇóΪ£º Ò»ËÑË÷±íµ¥¿ÉÑ¡ËÑË÷ ²úÆ·/×ÊѶ/É̼ң¬ËÑË÷ʱϣÍûÏÈËѱêÌâºóÈ«ÎÄ£¬µ±Ç°µÄÊý¾ÝÁ¿¹À¼Æ3Íò¶à£¬¶¨Î»ÆÚÍûÔÚ°ÙÍò¼¶Ò²¿ÉÓᣠÊý¾ÝÀàÐÍΪinnodb£¬µ±Ç°µÄ·½·¨ÊǶԹؼü´Ê½øÐÐ ......
ÏÖÔÚÓÐÒ»¸öÍøÕ¾£¬ÏëÔÚÁíÍâһ̨·þÎñÆ÷ÉÏ×öÒ»¸öÕâ¸öÍøÕ¾µÄ¾µÏñ¡£ ÔÚÖ÷ÍøÕ¾ÉϵÄÊý¾Ý¸üÐÂҪͬ²½µ½¾µÏñ·þÎñÆ÷ÉÏ Í¬Ê±Óû§·ÃÎʾµÏñ·þÎñÆ÷ʱµÄÊý¾Ý¸üÐÂҲҪͬ²½µ½Ö÷ÍøÕ¾ÉÏ ÆäÖÐÊý¾Ý¸üРÖ÷Òª°üÀ¨ MysqlÊý¾Ý¿âµ ......
if(mysql_init(&mysql)==NULL) { sprintf(ErrMsg,"We are outof Memory"); return(false); } if(!mysql_real_connect(&mysql,"localhost","test" ......
ÔÚMySQL5.0Öд¬½¢´æ´¢¹ý³Ìͨ²»¹ý£¬Ìáʾ£º [Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' ......