Ok Packet https://dev.mysql.com/doc/dev/mysql-server/latest/page_protocol_basic_ok_packet.html
(data []byte)
| 668 | // Ok Packet |
| 669 | // https://dev.mysql.com/doc/dev/mysql-server/latest/page_protocol_basic_ok_packet.html |
| 670 | func (mc *okHandler) handleOkPacket(data []byte) error { |
| 671 | var n, m int |
| 672 | var affectedRows, insertId uint64 |
| 673 | |
| 674 | // 0x00 [1 byte] |
| 675 | |
| 676 | // Affected rows [Length Coded Binary] |
| 677 | affectedRows, _, n = readLengthEncodedInteger(data[1:]) |
| 678 | |
| 679 | // Insert id [Length Coded Binary] |
| 680 | insertId, _, m = readLengthEncodedInteger(data[1+n:]) |
| 681 | |
| 682 | // Update for the current statement result (only used by |
| 683 | // readResultSetHeaderPacket). |
| 684 | if len(mc.result.affectedRows) > 0 { |
| 685 | mc.result.affectedRows[len(mc.result.affectedRows)-1] = int64(affectedRows) |
| 686 | } |
| 687 | if len(mc.result.insertIds) > 0 { |
| 688 | mc.result.insertIds[len(mc.result.insertIds)-1] = int64(insertId) |
| 689 | } |
| 690 | |
| 691 | // server_status [2 bytes] |
| 692 | mc.status = readStatus(data[1+n+m : 1+n+m+2]) |
| 693 | if mc.status&statusMoreResultsExists != 0 { |
| 694 | return nil |
| 695 | } |
| 696 | |
| 697 | // warning count [2 bytes] |
| 698 | |
| 699 | return nil |
| 700 | } |
| 701 | |
| 702 | // Read Packets as Field Packets until EOF-Packet or an Error appears |
| 703 | // https://dev.mysql.com/doc/dev/mysql-server/latest/page_protocol_com_query_response_text_resultset_column_definition.html#sect_protocol_com_query_response_text_resultset_column_definition_41 |
no test coverage detected