Commit a2940fd
committed
Improve MySQL
MySQL uses a statement body similar to MSSQL (but without the `AS`
keyword) instead of `EXECUTE` body style used in Postgres and standard
SQL. But unlike MSSQL, MySQL puts the trigger period before the target
table. We add some flags to indicate these differences and allow parsing
and round tripping MySQL triggers. The main benefit is that we can now
handle MySQL triggers which include `BEGIN; ... END;` compound
statements.CREATE TRIGGER parsing1 parent 698154d commit a2940fd
File tree
6 files changed
+58
-15
lines changed- src
- ast
- dialect
- parser
- tests
6 files changed
+58
-15
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3962 | 3962 | | |
3963 | 3963 | | |
3964 | 3964 | | |
| 3965 | + | |
| 3966 | + | |
| 3967 | + | |
| 3968 | + | |
| 3969 | + | |
| 3970 | + | |
| 3971 | + | |
| 3972 | + | |
| 3973 | + | |
3965 | 3974 | | |
3966 | 3975 | | |
3967 | 3976 | | |
| |||
3980 | 3989 | | |
3981 | 3990 | | |
3982 | 3991 | | |
| 3992 | + | |
| 3993 | + | |
3983 | 3994 | | |
3984 | 3995 | | |
3985 | 3996 | | |
| |||
4944 | 4955 | | |
4945 | 4956 | | |
4946 | 4957 | | |
| 4958 | + | |
4947 | 4959 | | |
4948 | 4960 | | |
4949 | 4961 | | |
| |||
4953 | 4965 | | |
4954 | 4966 | | |
4955 | 4967 | | |
| 4968 | + | |
4956 | 4969 | | |
4957 | 4970 | | |
4958 | 4971 | | |
| |||
4964 | 4977 | | |
4965 | 4978 | | |
4966 | 4979 | | |
4967 | | - | |
| 4980 | + | |
4968 | 4981 | | |
4969 | 4982 | | |
4970 | 4983 | | |
| |||
5002 | 5015 | | |
5003 | 5016 | | |
5004 | 5017 | | |
5005 | | - | |
| 5018 | + | |
| 5019 | + | |
| 5020 | + | |
| 5021 | + | |
5006 | 5022 | | |
5007 | 5023 | | |
5008 | 5024 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
257 | 257 | | |
258 | 258 | | |
259 | 259 | | |
| 260 | + | |
260 | 261 | | |
261 | 262 | | |
262 | 263 | | |
| |||
265 | 266 | | |
266 | 267 | | |
267 | 268 | | |
| 269 | + | |
268 | 270 | | |
269 | 271 | | |
270 | 272 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5593 | 5593 | | |
5594 | 5594 | | |
5595 | 5595 | | |
5596 | | - | |
5597 | | - | |
5598 | | - | |
| 5596 | + | |
| 5597 | + | |
| 5598 | + | |
| 5599 | + | |
| 5600 | + | |
| 5601 | + | |
| 5602 | + | |
5599 | 5603 | | |
5600 | 5604 | | |
5601 | 5605 | | |
5602 | 5606 | | |
5603 | 5607 | | |
5604 | 5608 | | |
5605 | 5609 | | |
| 5610 | + | |
5606 | 5611 | | |
5607 | 5612 | | |
5608 | 5613 | | |
5609 | 5614 | | |
5610 | 5615 | | |
5611 | 5616 | | |
5612 | 5617 | | |
5613 | | - | |
5614 | | - | |
| 5618 | + | |
| 5619 | + | |
| 5620 | + | |
5615 | 5621 | | |
5616 | 5622 | | |
5617 | 5623 | | |
| |||
6537 | 6543 | | |
6538 | 6544 | | |
6539 | 6545 | | |
6540 | | - | |
| 6546 | + | |
6541 | 6547 | | |
6542 | 6548 | | |
6543 | 6549 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2376 | 2376 | | |
2377 | 2377 | | |
2378 | 2378 | | |
| 2379 | + | |
2379 | 2380 | | |
2380 | 2381 | | |
2381 | 2382 | | |
| |||
2384 | 2385 | | |
2385 | 2386 | | |
2386 | 2387 | | |
| 2388 | + | |
2387 | 2389 | | |
2388 | 2390 | | |
2389 | 2391 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3914 | 3914 | | |
3915 | 3915 | | |
3916 | 3916 | | |
3917 | | - | |
3918 | | - | |
3919 | | - | |
3920 | | - | |
3921 | | - | |
| 3917 | + | |
| 3918 | + | |
3922 | 3919 | | |
3923 | 3920 | | |
3924 | 3921 | | |
| |||
3927 | 3924 | | |
3928 | 3925 | | |
3929 | 3926 | | |
| 3927 | + | |
3930 | 3928 | | |
3931 | 3929 | | |
3932 | 3930 | | |
| |||
3938 | 3936 | | |
3939 | 3937 | | |
3940 | 3938 | | |
3941 | | - | |
| 3939 | + | |
3942 | 3940 | | |
3943 | 3941 | | |
| 3942 | + | |
3944 | 3943 | | |
3945 | 3944 | | |
3946 | 3945 | | |
3947 | 3946 | | |
3948 | 3947 | | |
3949 | 3948 | | |
| 3949 | + | |
| 3950 | + | |
| 3951 | + | |
| 3952 | + | |
| 3953 | + | |
| 3954 | + | |
3950 | 3955 | | |
3951 | 3956 | | |
3952 | 3957 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5552 | 5552 | | |
5553 | 5553 | | |
5554 | 5554 | | |
| 5555 | + | |
5555 | 5556 | | |
5556 | 5557 | | |
5557 | 5558 | | |
| |||
5566 | 5567 | | |
5567 | 5568 | | |
5568 | 5569 | | |
| 5570 | + | |
5569 | 5571 | | |
5570 | 5572 | | |
5571 | 5573 | | |
| |||
5582 | 5584 | | |
5583 | 5585 | | |
5584 | 5586 | | |
| 5587 | + | |
5585 | 5588 | | |
5586 | 5589 | | |
5587 | 5590 | | |
| |||
5603 | 5606 | | |
5604 | 5607 | | |
5605 | 5608 | | |
| 5609 | + | |
5606 | 5610 | | |
5607 | 5611 | | |
5608 | 5612 | | |
| |||
5619 | 5623 | | |
5620 | 5624 | | |
5621 | 5625 | | |
| 5626 | + | |
5622 | 5627 | | |
5623 | 5628 | | |
5624 | 5629 | | |
| |||
5633 | 5638 | | |
5634 | 5639 | | |
5635 | 5640 | | |
| 5641 | + | |
5636 | 5642 | | |
5637 | 5643 | | |
5638 | 5644 | | |
| |||
5649 | 5655 | | |
5650 | 5656 | | |
5651 | 5657 | | |
| 5658 | + | |
5652 | 5659 | | |
5653 | 5660 | | |
5654 | 5661 | | |
| |||
5667 | 5674 | | |
5668 | 5675 | | |
5669 | 5676 | | |
| 5677 | + | |
5670 | 5678 | | |
5671 | 5679 | | |
5672 | 5680 | | |
| |||
5687 | 5695 | | |
5688 | 5696 | | |
5689 | 5697 | | |
| 5698 | + | |
5690 | 5699 | | |
5691 | 5700 | | |
5692 | 5701 | | |
| |||
5712 | 5721 | | |
5713 | 5722 | | |
5714 | 5723 | | |
| 5724 | + | |
5715 | 5725 | | |
5716 | 5726 | | |
5717 | 5727 | | |
| |||
5994 | 6004 | | |
5995 | 6005 | | |
5996 | 6006 | | |
| 6007 | + | |
5997 | 6008 | | |
5998 | 6009 | | |
5999 | 6010 | | |
| |||
6005 | 6016 | | |
6006 | 6017 | | |
6007 | 6018 | | |
6008 | | - | |
| 6019 | + | |
6009 | 6020 | | |
6010 | 6021 | | |
| 6022 | + | |
6011 | 6023 | | |
6012 | 6024 | | |
6013 | 6025 | | |
| |||
0 commit comments