First keyword was DELETE
()
| 438 | |
| 439 | // First keyword was DELETE |
| 440 | func (m *Sqlbridge) parseSqlDelete() (*SqlDelete, error) { |
| 441 | |
| 442 | req := NewSqlDelete() |
| 443 | m.Next() // Consume Delete |
| 444 | |
| 445 | // from |
| 446 | //u.Debugf("token: %v", m.Cur()) |
| 447 | if m.Cur().T != lex.TokenFrom { |
| 448 | return nil, m.ErrMsg("expected FROM") |
| 449 | } else { |
| 450 | // table name |
| 451 | m.Next() |
| 452 | //u.Debugf("found table? %v", m.Cur()) |
| 453 | switch m.Cur().T { |
| 454 | case lex.TokenTable: |
| 455 | req.Table = m.Cur().V |
| 456 | default: |
| 457 | return nil, m.ErrMsg("expected table name") |
| 458 | } |
| 459 | } |
| 460 | |
| 461 | m.Next() |
| 462 | //u.Debugf("cur lex.Token: %s", m.Cur().T.String()) |
| 463 | if errreq := m.parseWhereDelete(req); errreq != nil { |
| 464 | return nil, errreq |
| 465 | } |
| 466 | // we are good |
| 467 | return req, nil |
| 468 | } |
| 469 | |
| 470 | // First keyword was PREPARE |
| 471 | func (m *Sqlbridge) parsePrepare() (*PreparedStatement, error) { |
no test coverage detected