Column-oriented GPU-accelerated Database Management System
CoGaDB
|
input grammar: src/sql/server/sql_parser.ypp
State 333 conflicts: 1 shift/reduce State 371 conflicts: 2 shift/reduce, 1 reduce/reduce State 372 conflicts: 3 shift/reduce, 1 reduce/reduce
0 $accept → sql_list "end of file" 1 sql_list → sql ';' 2 | sql_list sql ';' 3 sql → schema 4 schema → CREATE SCHEMA AUTHORIZATION user opt_schema_element_list 5 opt_schema_element_list → ε 6 | schema_element_list 7 schema_element_list → schema_element 8 | schema_element_list schema_element 9 schema_element → base_table_def 10 | view_def 11 | privilege_def 12 base_table_def → CREATE TABLE table '(' base_table_element_commalist ')' 13 base_table_element_commalist → base_table_element 14 | base_table_element_commalist ',' base_table_element 15 base_table_element → column_def 16 | table_constraint_def 17 column_def → column data_type column_def_opt_list 18 column_def_opt_list → ε 19 | column_def_opt_list column_def_opt 20 column_def_opt → NOT NULLX 21 | NOT NULLX UNIQUE 22 | NOT NULLX PRIMARY KEY 23 | DEFAULT literal 24 | DEFAULT NULLX 25 | DEFAULT USER 26 | CHECK '(' search_condition ')' 27 | REFERENCES table 28 | REFERENCES table '(' column_commalist ')' 29 table_constraint_def → UNIQUE '(' column_commalist ')' 30 | PRIMARY KEY '(' column_commalist ')' 31 | FOREIGN KEY '(' column_commalist ')' REFERENCES table 32 | FOREIGN KEY '(' column_commalist ')' REFERENCES table '(' column_commalist ')' 33 | CHECK '(' search_condition ')' 34 column_commalist → column 35 | column_commalist ',' column 36 view_def → CREATE VIEW table opt_column_commalist AS query_spec opt_with_check_option 37 opt_with_check_option → ε 38 | WITH CHECK OPTION 39 opt_column_commalist → ε 40 | '(' column_commalist ')' 41 privilege_def → GRANT privileges ON table TO grantee_commalist opt_with_grant_option 42 opt_with_grant_option → ε 43 | WITH GRANT OPTION 44 privileges → ALL PRIVILEGES 45 | ALL 46 | operation_commalist 47 operation_commalist → operation 48 | operation_commalist ',' operation 49 operation → SELECT 50 | INSERT 51 | DELETE 52 | UPDATE opt_column_commalist 53 | REFERENCES opt_column_commalist 54 grantee_commalist → grantee 55 | grantee_commalist ',' grantee 56 grantee → PUBLIC 57 | user 58 sql → module_def 59 module_def → MODULE opt_module LANGUAGE lang AUTHORIZATION user opt_cursor_def_list procedure_def_list 60 opt_module → ε 61 | module 62 lang → COBOL 63 | FORTRAN 64 | PASCAL 65 | PLI 66 | C 67 | ADA 68 opt_cursor_def_list → ε 69 | cursor_def_list 70 cursor_def_list → cursor_def 71 | cursor_def_list cursor_def 72 cursor_def → DECLARE cursor CURSOR FOR query_exp opt_order_by_clause 73 opt_order_by_clause → ε 74 | ORDER BY ordering_spec_commalist 75 ordering_spec_commalist → ordering_spec 76 | ordering_spec_commalist ',' ordering_spec 77 ordering_spec → INTNUM opt_asc_desc 78 | column_ref opt_asc_desc 79 opt_asc_desc → ε 80 | ASC 81 | DESC 82 procedure_def_list → procedure_def 83 | procedure_def_list procedure_def 84 procedure_def → PROCEDURE procedure parameter_def_list ';' manipulative_statement_list 85 manipulative_statement_list → manipulative_statement 86 | manipulative_statement_list manipulative_statement 87 parameter_def_list → parameter_def 88 | parameter_def_list parameter_def 89 parameter_def → parameter data_type 90 | SQLCODE 91 sql → manipulative_statement 92 manipulative_statement → close_statement 93 | commit_statement 94 | delete_statement_positioned 95 | delete_statement_searched 96 | fetch_statement 97 | insert_statement 98 | open_statement 99 | rollback_statement 100 | select_statement 101 | query_statement 102 | update_statement_positioned 103 | update_statement_searched 104 | create_statement 105 close_statement → CLOSE cursor 106 commit_statement → COMMIT WORK 107 delete_statement_positioned → DELETE FROM table WHERE CURRENT OF cursor 108 delete_statement_searched → DELETE FROM table opt_where_clause 109 fetch_statement → FETCH cursor INTO target_commalist 110 insert_statement → INSERT INTO table opt_column_commalist values_or_query_spec 111 values_or_query_spec → VALUES '(' insert_atom_commalist ')' 112 | query_spec 113 insert_atom_commalist → insert_atom 114 | insert_atom_commalist ',' insert_atom 115 insert_atom → atom 116 | NULLX 117 open_statement → OPEN cursor 118 rollback_statement → ROLLBACK WORK 119 select_statement → SELECT opt_all_distinct selection INTO target_commalist table_exp 120 query_statement → query_exp 121 create_statement → base_table_def 122 opt_all_distinct → ε 123 | ALL 124 | DISTINCT 125 update_statement_positioned → UPDATE table SET assignment_commalist WHERE CURRENT OF cursor 126 assignment_commalist → ε 127 | assignment 128 | assignment_commalist ',' assignment 129 assignment → column '=' scalar_exp 130 | column '=' NULLX 131 update_statement_searched → UPDATE table SET assignment_commalist opt_where_clause 132 target_commalist → target 133 | target_commalist ',' target 134 target → parameter_ref 135 opt_where_clause → ε 136 | where_clause 137 query_exp → query_term 138 | query_exp UNION query_term 139 | query_exp UNION ALL query_term 140 query_term → query_spec 141 | '(' query_exp ')' 142 query_spec → SELECT opt_all_distinct selection table_exp 143 selection → scalar_exp_commalist 144 | '*' 145 table_exp → from_clause opt_where_clause opt_group_by_clause opt_having_clause opt_order_by_clause 146 from_clause → FROM table_ref_commalist 147 table_ref_commalist → table_ref 148 | table_ref_commalist ',' table_ref 149 table_ref → table 150 | table range_variable 151 | joined_table 152 joined_table → cross_join 153 | qualified_join 154 | '(' joined_table ')' 155 cross_join → table_ref CROSS JOIN table_ref 156 qualified_join → table_ref join_type JOIN table_ref join_spec 157 join_type → ε 158 | INNER 159 join_spec → ε 160 | join_condition 161 join_condition → ON search_condition 162 where_clause → WHERE search_condition 163 opt_group_by_clause → ε 164 | GROUP BY column_ref_commalist 165 column_ref_commalist → column_ref 166 | column_ref_commalist ',' column_ref 167 opt_having_clause → ε 168 | HAVING search_condition 169 search_condition → search_condition OR search_condition 170 | search_condition AND search_condition 171 | NOT search_condition 172 | '(' search_condition ')' 173 | predicate 174 predicate → comparison_predicate 175 | between_predicate 176 | like_predicate 177 | test_for_null 178 | in_predicate 179 | all_or_any_predicate 180 | existence_test 181 comparison_predicate → scalar_exp COMPARISON scalar_exp 182 | scalar_exp COMPARISON subquery 183 between_predicate → scalar_exp NOT BETWEEN scalar_exp AND scalar_exp 184 | scalar_exp BETWEEN scalar_exp AND scalar_exp 185 like_predicate → scalar_exp NOT LIKE atom opt_escape 186 | scalar_exp LIKE atom opt_escape 187 opt_escape → ε 188 | ESCAPE atom 189 test_for_null → column_ref IS NOT NULLX 190 | column_ref IS NULLX 191 in_predicate → scalar_exp NOT IN '(' subquery ')' 192 | scalar_exp IN '(' subquery ')' 193 | scalar_exp NOT IN '(' atom_commalist ')' 194 | scalar_exp IN '(' atom_commalist ')' 195 atom_commalist → atom 196 | atom_commalist ',' atom 197 all_or_any_predicate → scalar_exp COMPARISON any_all_some subquery 198 any_all_some → ANY 199 | ALL 200 | SOME 201 existence_test → EXISTS subquery 202 subquery → '(' SELECT opt_all_distinct selection table_exp ')' 203 scalar_exp → scalar_exp '+' scalar_exp 204 | scalar_exp '-' scalar_exp 205 | scalar_exp '*' scalar_exp 206 | scalar_exp '/' scalar_exp 207 | '+' scalar_exp 208 | '-' scalar_exp 209 | atom 210 | column_ref 211 | function_ref 212 | '(' scalar_exp ')' 213 derived_column → scalar_exp 214 | scalar_exp AS column_ref 215 scalar_exp_commalist → derived_column 216 | scalar_exp_commalist ',' derived_column 217 atom → parameter_ref 218 | literal 219 | USER 220 parameter_ref → parameter 221 | parameter parameter 222 | parameter INDICATOR parameter 223 function_ref → AMMSC '(' '*' ')' 224 | AMMSC '(' DISTINCT column_ref ')' 225 | AMMSC '(' ALL scalar_exp ')' 226 | AMMSC '(' scalar_exp ')' 227 literal → STRING 228 | INTNUM 229 | APPROXNUM 230 table → NAME 231 | NAME '.' NAME 232 column_ref → NAME 233 | NAME '.' NAME 234 | NAME '.' NAME '.' NAME 235 data_type → CHARACTER 236 | CHARACTER '(' INTNUM ')' 237 | VARCHAR 238 | VARCHAR '(' INTNUM ')' 239 | NUMERIC 240 | NUMERIC '(' INTNUM ')' 241 | NUMERIC '(' INTNUM ',' INTNUM ')' 242 | DECIMAL 243 | DECIMAL '(' INTNUM ')' 244 | DECIMAL '(' INTNUM ',' INTNUM ')' 245 | INTEGER 246 | SMALLINT 247 | FLOAT 248 | FLOAT '(' INTNUM ')' 249 | REAL 250 | DOUBLE PRECISION 251 column → NAME 252 cursor → NAME 253 module → NAME 254 parameter → ':' NAME 255 procedure → NAME 256 range_variable → NAME 257 user → NAME 258 sql → WHENEVER NOT FOUND when_action 259 | WHENEVER SQLERROR when_action 260 when_action → GOTO NAME 261 | CONTINUE
"end of file" (0) 0 '(' (40) 12 26 28 29 30 31 32 33 40 111 141 154 172 191 192 193 194 202 212 223 224 225 226 236 238 240 241 243 244 248 ')' (41) 12 26 28 29 30 31 32 33 40 111 141 154 172 191 192 193 194 202 212 223 224 225 226 236 238 240 241 243 244 248 '*' (42) 144 205 223 '+' (43) 203 207 ',' (44) 14 35 48 55 76 114 128 133 148 166 196 216 241 244 '-' (45) 204 208 '.' (46) 231 233 234 '/' (47) 206 ':' (58) 254 ';' (59) 1 2 84 '=' (61) 129 130 error (256) NAME (258) 230 231 232 233 234 251 252 253 254 255 256 257 260 STRING (259) 227 INTNUM (260) 77 228 236 238 240 241 243 244 248 APPROXNUM (261) 229 AMMSC (262) 223 224 225 226 OR (263) 169 AND (264) 170 183 184 NOT (265) 20 21 22 171 183 185 189 191 193 258 COMPARISON (266) 181 182 197 UMINUS (267) ALL (268) 44 45 123 139 199 225 ANY (269) 198 AS (270) 36 214 ASC (271) 80 AUTHORIZATION (272) 4 59 BETWEEN (273) 183 184 BY (274) 74 164 CHARACTER (275) 235 236 CHECK (276) 26 33 38 CLOSE (277) 105 COMMIT (278) 106 CONTINUE (279) 261 CREATE (280) 4 12 36 CROSS (281) 155 CURRENT (282) 107 125 CURSOR (283) 72 DECIMAL (284) 242 243 244 DECLARE (285) 72 DEFAULT (286) 23 24 25 DELETE (287) 51 107 108 DESC (288) 81 DISTINCT (289) 124 224 DOUBLE (290) 250 ESCAPE (291) 188 EXISTS (292) 201 FETCH (293) 109 FLOAT (294) 247 248 FOR (295) 72 FOREIGN (296) 31 32 FOUND (297) 258 FROM (298) 107 108 146 GOTO (299) 260 GRANT (300) 41 43 GROUP (301) 164 HAVING (302) 168 IN (303) 191 192 193 194 INDICATOR (304) 222 INNER (305) 158 INSERT (306) 50 110 INTEGER (307) 245 INTO (308) 109 110 119 IS (309) 189 190 JOIN (310) 155 156 KEY (311) 22 30 31 32 LANGUAGE (312) 59 LIKE (313) 185 186 MODULE (314) 59 NULLX (315) 20 21 22 24 116 130 189 190 NUMERIC (316) 239 240 241 OF (317) 107 125 ON (318) 41 161 OPEN (319) 117 OPTION (320) 38 43 ORDER (321) 74 PRECISION (322) 250 PRIMARY (323) 22 30 PRIVILEGES (324) 44 PROCEDURE (325) 84 PUBLIC (326) 56 REAL (327) 249 REFERENCES (328) 27 28 31 32 53 ROLLBACK (329) 118 SCHEMA (330) 4 SELECT (331) 49 119 142 202 SET (332) 125 131 SMALLINT (333) 246 SOME (334) 200 SQLCODE (335) 90 SQLERROR (336) 259 TABLE (337) 12 TO (338) 41 UNION (339) 138 139 UNIQUE (340) 21 29 UPDATE (341) 52 125 131 USER (342) 25 219 VALUES (343) 111 VARCHAR (344) 237 238 VIEW (345) 36 WHENEVER (346) 258 259 WHERE (347) 107 125 162 WITH (348) 38 43 WORK (349) 106 118 COBOL (350) 62 FORTRAN (351) 63 PASCAL (352) 64 PLI (353) 65 C (354) 66 ADA (355) 67
$accept (112) on left: 0 sql_list (113) on left: 1 2 on right: 0 2 sql (114) on left: 3 58 91 258 259 on right: 1 2 schema (115) on left: 4 on right: 3 opt_schema_element_list (116) on left: 5 6 on right: 4 schema_element_list (117) on left: 7 8 on right: 6 8 schema_element (118) on left: 9 10 11 on right: 7 8 base_table_def (119) on left: 12 on right: 9 121 base_table_element_commalist (120) on left: 13 14 on right: 12 14 base_table_element (121) on left: 15 16 on right: 13 14 column_def (122) on left: 17 on right: 15 column_def_opt_list (123) on left: 18 19 on right: 17 19 column_def_opt (124) on left: 20 21 22 23 24 25 26 27 28 on right: 19 table_constraint_def (125) on left: 29 30 31 32 33 on right: 16 column_commalist (126) on left: 34 35 on right: 28 29 30 31 32 35 40 view_def (127) on left: 36 on right: 10 opt_with_check_option (128) on left: 37 38 on right: 36 opt_column_commalist (129) on left: 39 40 on right: 36 52 53 110 privilege_def (130) on left: 41 on right: 11 opt_with_grant_option (131) on left: 42 43 on right: 41 privileges (132) on left: 44 45 46 on right: 41 operation_commalist (133) on left: 47 48 on right: 46 48 operation (134) on left: 49 50 51 52 53 on right: 47 48 grantee_commalist (135) on left: 54 55 on right: 41 55 grantee (136) on left: 56 57 on right: 54 55 module_def (137) on left: 59 on right: 58 opt_module (138) on left: 60 61 on right: 59 lang (139) on left: 62 63 64 65 66 67 on right: 59 opt_cursor_def_list (140) on left: 68 69 on right: 59 cursor_def_list (141) on left: 70 71 on right: 69 71 cursor_def (142) on left: 72 on right: 70 71 opt_order_by_clause (143) on left: 73 74 on right: 72 145 ordering_spec_commalist (144) on left: 75 76 on right: 74 76 ordering_spec (145) on left: 77 78 on right: 75 76 opt_asc_desc (146) on left: 79 80 81 on right: 77 78 procedure_def_list (147) on left: 82 83 on right: 59 83 procedure_def (148) on left: 84 on right: 82 83 manipulative_statement_list (149) on left: 85 86 on right: 84 86 parameter_def_list (150) on left: 87 88 on right: 84 88 parameter_def (151) on left: 89 90 on right: 87 88 manipulative_statement (152) on left: 92 93 94 95 96 97 98 99 100 101 102 103 104 on right: 85 86 91 close_statement (153) on left: 105 on right: 92 commit_statement (154) on left: 106 on right: 93 delete_statement_positioned (155) on left: 107 on right: 94 delete_statement_searched (156) on left: 108 on right: 95 fetch_statement (157) on left: 109 on right: 96 insert_statement (158) on left: 110 on right: 97 values_or_query_spec (159) on left: 111 112 on right: 110 insert_atom_commalist (160) on left: 113 114 on right: 111 114 insert_atom (161) on left: 115 116 on right: 113 114 open_statement (162) on left: 117 on right: 98 rollback_statement (163) on left: 118 on right: 99 select_statement (164) on left: 119 on right: 100 query_statement (165) on left: 120 on right: 101 create_statement (166) on left: 121 on right: 104 opt_all_distinct (167) on left: 122 123 124 on right: 119 142 202 update_statement_positioned (168) on left: 125 on right: 102 assignment_commalist (169) on left: 126 127 128 on right: 125 128 131 assignment (170) on left: 129 130 on right: 127 128 update_statement_searched (171) on left: 131 on right: 103 target_commalist (172) on left: 132 133 on right: 109 119 133 target (173) on left: 134 on right: 132 133 opt_where_clause (174) on left: 135 136 on right: 108 131 145 query_exp (175) on left: 137 138 139 on right: 72 120 138 139 141 query_term (176) on left: 140 141 on right: 137 138 139 query_spec (177) on left: 142 on right: 36 112 140 selection (178) on left: 143 144 on right: 119 142 202 table_exp (179) on left: 145 on right: 119 142 202 from_clause (180) on left: 146 on right: 145 table_ref_commalist (181) on left: 147 148 on right: 146 148 table_ref (182) on left: 149 150 151 on right: 147 148 155 156 joined_table (183) on left: 152 153 154 on right: 151 154 cross_join (184) on left: 155 on right: 152 qualified_join (185) on left: 156 on right: 153 join_type (186) on left: 157 158 on right: 156 join_spec (187) on left: 159 160 on right: 156 join_condition (188) on left: 161 on right: 160 where_clause (189) on left: 162 on right: 136 opt_group_by_clause (190) on left: 163 164 on right: 145 column_ref_commalist (191) on left: 165 166 on right: 164 166 opt_having_clause (192) on left: 167 168 on right: 145 search_condition (193) on left: 169 170 171 172 173 on right: 26 33 161 162 168 169 170 171 172 predicate (194) on left: 174 175 176 177 178 179 180 on right: 173 comparison_predicate (195) on left: 181 182 on right: 174 between_predicate (196) on left: 183 184 on right: 175 like_predicate (197) on left: 185 186 on right: 176 opt_escape (198) on left: 187 188 on right: 185 186 test_for_null (199) on left: 189 190 on right: 177 in_predicate (200) on left: 191 192 193 194 on right: 178 atom_commalist (201) on left: 195 196 on right: 193 194 196 all_or_any_predicate (202) on left: 197 on right: 179 any_all_some (203) on left: 198 199 200 on right: 197 existence_test (204) on left: 201 on right: 180 subquery (205) on left: 202 on right: 182 191 192 197 201 scalar_exp (206) on left: 203 204 205 206 207 208 209 210 211 212 on right: 129 181 182 183 184 185 186 191 192 193 194 197 203 204 205 206 207 208 212 213 214 225 226 derived_column (207) on left: 213 214 on right: 215 216 scalar_exp_commalist (208) on left: 215 216 on right: 143 216 atom (209) on left: 217 218 219 on right: 115 185 186 188 195 196 209 parameter_ref (210) on left: 220 221 222 on right: 134 217 function_ref (211) on left: 223 224 225 226 on right: 211 literal (212) on left: 227 228 229 on right: 23 218 table (213) on left: 230 231 on right: 12 27 28 31 32 36 41 107 108 110 125 131 149 150 column_ref (214) on left: 232 233 234 on right: 78 165 166 189 190 210 214 224 data_type (215) on left: 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 on right: 17 89 column (216) on left: 251 on right: 17 34 35 129 130 cursor (217) on left: 252 on right: 72 105 107 109 117 125 module (218) on left: 253 on right: 61 parameter (219) on left: 254 on right: 89 220 221 222 procedure (220) on left: 255 on right: 84 range_variable (221) on left: 256 on right: 150 user (222) on left: 257 on right: 4 57 59 when_action (223) on left: 260 261 on right: 258 259
0 $accept → . sql_list "end of file" 1 sql_list → . sql ';' 2 | . sql_list sql ';' 3 sql → . schema 4 schema → . CREATE SCHEMA AUTHORIZATION user opt_schema_element_list 12 base_table_def → . CREATE TABLE table '(' base_table_element_commalist ')' 58 sql → . module_def 59 module_def → . MODULE opt_module LANGUAGE lang AUTHORIZATION user opt_cursor_def_list procedure_def_list 91 sql → . manipulative_statement 92 manipulative_statement → . close_statement 93 | . commit_statement 94 | . delete_statement_positioned 95 | . delete_statement_searched 96 | . fetch_statement 97 | . insert_statement 98 | . open_statement 99 | . rollback_statement 100 | . select_statement 101 | . query_statement 102 | . update_statement_positioned 103 | . update_statement_searched 104 | . create_statement 105 close_statement → . CLOSE cursor 106 commit_statement → . COMMIT WORK 107 delete_statement_positioned → . DELETE FROM table WHERE CURRENT OF cursor 108 delete_statement_searched → . DELETE FROM table opt_where_clause 109 fetch_statement → . FETCH cursor INTO target_commalist 110 insert_statement → . INSERT INTO table opt_column_commalist values_or_query_spec 117 open_statement → . OPEN cursor 118 rollback_statement → . ROLLBACK WORK 119 select_statement → . SELECT opt_all_distinct selection INTO target_commalist table_exp 120 query_statement → . query_exp 121 create_statement → . base_table_def 125 update_statement_positioned → . UPDATE table SET assignment_commalist WHERE CURRENT OF cursor 131 update_statement_searched → . UPDATE table SET assignment_commalist opt_where_clause 137 query_exp → . query_term 138 | . query_exp UNION query_term 139 | . query_exp UNION ALL query_term 140 query_term → . query_spec 141 | . '(' query_exp ')' 142 query_spec → . SELECT opt_all_distinct selection table_exp 258 sql → . WHENEVER NOT FOUND when_action 259 | . WHENEVER SQLERROR when_action CLOSE shift, and go to state 1 COMMIT shift, and go to state 2 CREATE shift, and go to state 3 DELETE shift, and go to state 4 FETCH shift, and go to state 5 INSERT shift, and go to state 6 MODULE shift, and go to state 7 OPEN shift, and go to state 8 ROLLBACK shift, and go to state 9 SELECT shift, and go to state 10 UPDATE shift, and go to state 11 WHENEVER shift, and go to state 12 '(' shift, and go to state 13 sql_list go to state 14 sql go to state 15 schema go to state 16 base_table_def go to state 17 module_def go to state 18 manipulative_statement go to state 19 close_statement go to state 20 commit_statement go to state 21 delete_statement_positioned go to state 22 delete_statement_searched go to state 23 fetch_statement go to state 24 insert_statement go to state 25 open_statement go to state 26 rollback_statement go to state 27 select_statement go to state 28 query_statement go to state 29 create_statement go to state 30 update_statement_positioned go to state 31 update_statement_searched go to state 32 query_exp go to state 33 query_term go to state 34 query_spec go to state 35
105 close_statement → CLOSE . cursor 252 cursor → . NAME NAME shift, and go to state 36 cursor go to state 37
106 commit_statement → COMMIT . WORK WORK shift, and go to state 38
4 schema → CREATE . SCHEMA AUTHORIZATION user opt_schema_element_list 12 base_table_def → CREATE . TABLE table '(' base_table_element_commalist ')' SCHEMA shift, and go to state 39 TABLE shift, and go to state 40
107 delete_statement_positioned → DELETE . FROM table WHERE CURRENT OF cursor 108 delete_statement_searched → DELETE . FROM table opt_where_clause FROM shift, and go to state 41
109 fetch_statement → FETCH . cursor INTO target_commalist 252 cursor → . NAME NAME shift, and go to state 36 cursor go to state 42
110 insert_statement → INSERT . INTO table opt_column_commalist values_or_query_spec INTO shift, and go to state 43
59 module_def → MODULE . opt_module LANGUAGE lang AUTHORIZATION user opt_cursor_def_list procedure_def_list 60 opt_module → . [LANGUAGE] 61 | . module 253 module → . NAME NAME shift, and go to state 44 $default reduce using rule 60 (opt_module) opt_module go to state 45 module go to state 46
117 open_statement → OPEN . cursor 252 cursor → . NAME NAME shift, and go to state 36 cursor go to state 47
118 rollback_statement → ROLLBACK . WORK WORK shift, and go to state 48
119 select_statement → SELECT . opt_all_distinct selection INTO target_commalist table_exp 122 opt_all_distinct → . [NAME, STRING, INTNUM, APPROXNUM, AMMSC, '+', '-', '*', USER, '(', ':'] 123 | . ALL 124 | . DISTINCT 142 query_spec → SELECT . opt_all_distinct selection table_exp ALL shift, and go to state 49 DISTINCT shift, and go to state 50 $default reduce using rule 122 (opt_all_distinct) opt_all_distinct go to state 51
125 update_statement_positioned → UPDATE . table SET assignment_commalist WHERE CURRENT OF cursor 131 update_statement_searched → UPDATE . table SET assignment_commalist opt_where_clause 230 table → . NAME 231 | . NAME '.' NAME NAME shift, and go to state 52 table go to state 53
258 sql → WHENEVER . NOT FOUND when_action 259 | WHENEVER . SQLERROR when_action NOT shift, and go to state 54 SQLERROR shift, and go to state 55
137 query_exp → . query_term 138 | . query_exp UNION query_term 139 | . query_exp UNION ALL query_term 140 query_term → . query_spec 141 | . '(' query_exp ')' 141 | '(' . query_exp ')' 142 query_spec → . SELECT opt_all_distinct selection table_exp SELECT shift, and go to state 56 '(' shift, and go to state 13 query_exp go to state 57 query_term go to state 34 query_spec go to state 35
0 $accept → sql_list . "end of file" 2 sql_list → sql_list . sql ';' 3 sql → . schema 4 schema → . CREATE SCHEMA AUTHORIZATION user opt_schema_element_list 12 base_table_def → . CREATE TABLE table '(' base_table_element_commalist ')' 58 sql → . module_def 59 module_def → . MODULE opt_module LANGUAGE lang AUTHORIZATION user opt_cursor_def_list procedure_def_list 91 sql → . manipulative_statement 92 manipulative_statement → . close_statement 93 | . commit_statement 94 | . delete_statement_positioned 95 | . delete_statement_searched 96 | . fetch_statement 97 | . insert_statement 98 | . open_statement 99 | . rollback_statement 100 | . select_statement 101 | . query_statement 102 | . update_statement_positioned 103 | . update_statement_searched 104 | . create_statement 105 close_statement → . CLOSE cursor 106 commit_statement → . COMMIT WORK 107 delete_statement_positioned → . DELETE FROM table WHERE CURRENT OF cursor 108 delete_statement_searched → . DELETE FROM table opt_where_clause 109 fetch_statement → . FETCH cursor INTO target_commalist 110 insert_statement → . INSERT INTO table opt_column_commalist values_or_query_spec 117 open_statement → . OPEN cursor 118 rollback_statement → . ROLLBACK WORK 119 select_statement → . SELECT opt_all_distinct selection INTO target_commalist table_exp 120 query_statement → . query_exp 121 create_statement → . base_table_def 125 update_statement_positioned → . UPDATE table SET assignment_commalist WHERE CURRENT OF cursor 131 update_statement_searched → . UPDATE table SET assignment_commalist opt_where_clause 137 query_exp → . query_term 138 | . query_exp UNION query_term 139 | . query_exp UNION ALL query_term 140 query_term → . query_spec 141 | . '(' query_exp ')' 142 query_spec → . SELECT opt_all_distinct selection table_exp 258 sql → . WHENEVER NOT FOUND when_action 259 | . WHENEVER SQLERROR when_action "end of file" shift, and go to state 58 CLOSE shift, and go to state 1 COMMIT shift, and go to state 2 CREATE shift, and go to state 3 DELETE shift, and go to state 4 FETCH shift, and go to state 5 INSERT shift, and go to state 6 MODULE shift, and go to state 7 OPEN shift, and go to state 8 ROLLBACK shift, and go to state 9 SELECT shift, and go to state 10 UPDATE shift, and go to state 11 WHENEVER shift, and go to state 12 '(' shift, and go to state 13 sql go to state 59 schema go to state 16 base_table_def go to state 17 module_def go to state 18 manipulative_statement go to state 19 close_statement go to state 20 commit_statement go to state 21 delete_statement_positioned go to state 22 delete_statement_searched go to state 23 fetch_statement go to state 24 insert_statement go to state 25 open_statement go to state 26 rollback_statement go to state 27 select_statement go to state 28 query_statement go to state 29 create_statement go to state 30 update_statement_positioned go to state 31 update_statement_searched go to state 32 query_exp go to state 33 query_term go to state 34 query_spec go to state 35
1 sql_list → sql . ';' ';' shift, and go to state 60
3 sql → schema . $default reduce using rule 3 (sql)
121 create_statement → base_table_def . $default reduce using rule 121 (create_statement)
58 sql → module_def . $default reduce using rule 58 (sql)
91 sql → manipulative_statement . $default reduce using rule 91 (sql)
92 manipulative_statement → close_statement . $default reduce using rule 92 (manipulative_statement)
93 manipulative_statement → commit_statement . $default reduce using rule 93 (manipulative_statement)
94 manipulative_statement → delete_statement_positioned . $default reduce using rule 94 (manipulative_statement)
95 manipulative_statement → delete_statement_searched . $default reduce using rule 95 (manipulative_statement)
96 manipulative_statement → fetch_statement . $default reduce using rule 96 (manipulative_statement)
97 manipulative_statement → insert_statement . $default reduce using rule 97 (manipulative_statement)
98 manipulative_statement → open_statement . $default reduce using rule 98 (manipulative_statement)
99 manipulative_statement → rollback_statement . $default reduce using rule 99 (manipulative_statement)
100 manipulative_statement → select_statement . $default reduce using rule 100 (manipulative_statement)
101 manipulative_statement → query_statement . $default reduce using rule 101 (manipulative_statement)
104 manipulative_statement → create_statement . $default reduce using rule 104 (manipulative_statement)
102 manipulative_statement → update_statement_positioned . $default reduce using rule 102 (manipulative_statement)
103 manipulative_statement → update_statement_searched . $default reduce using rule 103 (manipulative_statement)
120 query_statement → query_exp . [CLOSE, COMMIT, CREATE, DELETE, FETCH, INSERT, OPEN, PROCEDURE, ROLLBACK, SELECT, UPDATE, ';', '('] 138 query_exp → query_exp . UNION query_term 139 | query_exp . UNION ALL query_term UNION shift, and go to state 61 $default reduce using rule 120 (query_statement)
137 query_exp → query_term . $default reduce using rule 137 (query_exp)
140 query_term → query_spec . $default reduce using rule 140 (query_term)
252 cursor → NAME . $default reduce using rule 252 (cursor)
105 close_statement → CLOSE cursor . $default reduce using rule 105 (close_statement)
106 commit_statement → COMMIT WORK . $default reduce using rule 106 (commit_statement)
4 schema → CREATE SCHEMA . AUTHORIZATION user opt_schema_element_list AUTHORIZATION shift, and go to state 62
12 base_table_def → CREATE TABLE . table '(' base_table_element_commalist ')' 230 table → . NAME 231 | . NAME '.' NAME NAME shift, and go to state 52 table go to state 63
107 delete_statement_positioned → DELETE FROM . table WHERE CURRENT OF cursor 108 delete_statement_searched → DELETE FROM . table opt_where_clause 230 table → . NAME 231 | . NAME '.' NAME NAME shift, and go to state 52 table go to state 64
109 fetch_statement → FETCH cursor . INTO target_commalist INTO shift, and go to state 65
110 insert_statement → INSERT INTO . table opt_column_commalist values_or_query_spec 230 table → . NAME 231 | . NAME '.' NAME NAME shift, and go to state 52 table go to state 66
253 module → NAME . $default reduce using rule 253 (module)
59 module_def → MODULE opt_module . LANGUAGE lang AUTHORIZATION user opt_cursor_def_list procedure_def_list LANGUAGE shift, and go to state 67
61 opt_module → module . $default reduce using rule 61 (opt_module)
117 open_statement → OPEN cursor . $default reduce using rule 117 (open_statement)
118 rollback_statement → ROLLBACK WORK . $default reduce using rule 118 (rollback_statement)
123 opt_all_distinct → ALL . $default reduce using rule 123 (opt_all_distinct)
124 opt_all_distinct → DISTINCT . $default reduce using rule 124 (opt_all_distinct)
119 select_statement → SELECT opt_all_distinct . selection INTO target_commalist table_exp 142 query_spec → SELECT opt_all_distinct . selection table_exp 143 selection → . scalar_exp_commalist 144 | . '*' 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 213 derived_column → . scalar_exp 214 | . scalar_exp AS column_ref 215 scalar_exp_commalist → . derived_column 216 | . scalar_exp_commalist ',' derived_column 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 '*' shift, and go to state 75 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 selection go to state 79 scalar_exp go to state 80 derived_column go to state 81 scalar_exp_commalist go to state 82 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
230 table → NAME . [NAME, NOT, AS, CHECK, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DEFAULT, DELETE, FETCH, GRANT, GROUP, HAVING, INNER, INSERT, JOIN, ON, OPEN, ORDER, PROCEDURE, REFERENCES, ROLLBACK, SELECT, SET, TO, UNION, UPDATE, VALUES, WHERE, WITH, ';', '(', ')', ','] 231 | NAME . '.' NAME '.' shift, and go to state 89 $default reduce using rule 230 (table)
125 update_statement_positioned → UPDATE table . SET assignment_commalist WHERE CURRENT OF cursor 131 update_statement_searched → UPDATE table . SET assignment_commalist opt_where_clause SET shift, and go to state 90
258 sql → WHENEVER NOT . FOUND when_action FOUND shift, and go to state 91
259 sql → WHENEVER SQLERROR . when_action 260 when_action → . GOTO NAME 261 | . CONTINUE CONTINUE shift, and go to state 92 GOTO shift, and go to state 93 when_action go to state 94
122 opt_all_distinct → . [NAME, STRING, INTNUM, APPROXNUM, AMMSC, '+', '-', '*', USER, '(', ':'] 123 | . ALL 124 | . DISTINCT 142 query_spec → SELECT . opt_all_distinct selection table_exp ALL shift, and go to state 49 DISTINCT shift, and go to state 50 $default reduce using rule 122 (opt_all_distinct) opt_all_distinct go to state 95
138 query_exp → query_exp . UNION query_term 139 | query_exp . UNION ALL query_term 141 query_term → '(' query_exp . ')' UNION shift, and go to state 61 ')' shift, and go to state 96
0 $accept → sql_list "end of file" . $default accept
2 sql_list → sql_list sql . ';' ';' shift, and go to state 97
1 sql_list → sql ';' . $default reduce using rule 1 (sql_list)
138 query_exp → query_exp UNION . query_term 139 | query_exp UNION . ALL query_term 140 query_term → . query_spec 141 | . '(' query_exp ')' 142 query_spec → . SELECT opt_all_distinct selection table_exp ALL shift, and go to state 98 SELECT shift, and go to state 56 '(' shift, and go to state 13 query_term go to state 99 query_spec go to state 35
4 schema → CREATE SCHEMA AUTHORIZATION . user opt_schema_element_list 257 user → . NAME NAME shift, and go to state 100 user go to state 101
12 base_table_def → CREATE TABLE table . '(' base_table_element_commalist ')' '(' shift, and go to state 102
107 delete_statement_positioned → DELETE FROM table . WHERE CURRENT OF cursor 108 delete_statement_searched → DELETE FROM table . opt_where_clause 135 opt_where_clause → . [CLOSE, COMMIT, CREATE, DELETE, FETCH, INSERT, OPEN, PROCEDURE, ROLLBACK, SELECT, UPDATE, ';', '('] 136 | . where_clause 162 where_clause → . WHERE search_condition WHERE shift, and go to state 103 $default reduce using rule 135 (opt_where_clause) opt_where_clause go to state 104 where_clause go to state 105
109 fetch_statement → FETCH cursor INTO . target_commalist 132 target_commalist → . target 133 | . target_commalist ',' target 134 target → . parameter_ref 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 254 parameter → . ':' NAME ':' shift, and go to state 78 target_commalist go to state 106 target go to state 107 parameter_ref go to state 108 parameter go to state 88
39 opt_column_commalist → . [SELECT, VALUES] 40 | . '(' column_commalist ')' 110 insert_statement → INSERT INTO table . opt_column_commalist values_or_query_spec '(' shift, and go to state 109 $default reduce using rule 39 (opt_column_commalist) opt_column_commalist go to state 110
59 module_def → MODULE opt_module LANGUAGE . lang AUTHORIZATION user opt_cursor_def_list procedure_def_list 62 lang → . COBOL 63 | . FORTRAN 64 | . PASCAL 65 | . PLI 66 | . C 67 | . ADA COBOL shift, and go to state 111 FORTRAN shift, and go to state 112 PASCAL shift, and go to state 113 PLI shift, and go to state 114 C shift, and go to state 115 ADA shift, and go to state 116 lang go to state 117
232 column_ref → NAME . [OR, AND, NOT, COMPARISON, '+', '-', '*', '/', AS, ASC, BETWEEN, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, DESC, FETCH, FROM, GRANT, GROUP, HAVING, IN, INNER, INSERT, INTO, IS, JOIN, LIKE, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 233 | NAME . '.' NAME 234 | NAME . '.' NAME '.' NAME '.' shift, and go to state 118 $default reduce using rule 232 (column_ref)
227 literal → STRING . $default reduce using rule 227 (literal)
228 literal → INTNUM . $default reduce using rule 228 (literal)
229 literal → APPROXNUM . $default reduce using rule 229 (literal)
223 function_ref → AMMSC . '(' '*' ')' 224 | AMMSC . '(' DISTINCT column_ref ')' 225 | AMMSC . '(' ALL scalar_exp ')' 226 | AMMSC . '(' scalar_exp ')' '(' shift, and go to state 119
203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 207 | '+' . scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 120 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 208 | '-' . scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 121 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
144 selection → '*' . $default reduce using rule 144 (selection)
219 atom → USER . $default reduce using rule 219 (atom)
203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 212 | '(' . scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 122 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
254 parameter → ':' . NAME NAME shift, and go to state 123
119 select_statement → SELECT opt_all_distinct selection . INTO target_commalist table_exp 142 query_spec → SELECT opt_all_distinct selection . table_exp 145 table_exp → . from_clause opt_where_clause opt_group_by_clause opt_having_clause opt_order_by_clause 146 from_clause → . FROM table_ref_commalist FROM shift, and go to state 124 INTO shift, and go to state 125 table_exp go to state 126 from_clause go to state 127
203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp 213 derived_column → scalar_exp . [FROM, INTO, ','] 214 | scalar_exp . AS column_ref '+' shift, and go to state 128 '-' shift, and go to state 129 '*' shift, and go to state 130 '/' shift, and go to state 131 AS shift, and go to state 132 $default reduce using rule 213 (derived_column)
215 scalar_exp_commalist → derived_column . $default reduce using rule 215 (scalar_exp_commalist)
143 selection → scalar_exp_commalist . [FROM, INTO] 216 scalar_exp_commalist → scalar_exp_commalist . ',' derived_column ',' shift, and go to state 133 $default reduce using rule 143 (selection)
209 scalar_exp → atom . $default reduce using rule 209 (scalar_exp)
217 atom → parameter_ref . $default reduce using rule 217 (atom)
211 scalar_exp → function_ref . $default reduce using rule 211 (scalar_exp)
218 atom → literal . $default reduce using rule 218 (atom)
210 scalar_exp → column_ref . $default reduce using rule 210 (scalar_exp)
220 parameter_ref → parameter . [OR, AND, NOT, COMPARISON, '+', '-', '*', '/', AS, BETWEEN, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, ESCAPE, FETCH, FROM, GRANT, GROUP, HAVING, IN, INNER, INSERT, INTO, JOIN, LIKE, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 221 | parameter . parameter 222 | parameter . INDICATOR parameter 254 parameter → . ':' NAME INDICATOR shift, and go to state 134 ':' shift, and go to state 78 $default reduce using rule 220 (parameter_ref) parameter go to state 135
231 table → NAME '.' . NAME NAME shift, and go to state 136
125 update_statement_positioned → UPDATE table SET . assignment_commalist WHERE CURRENT OF cursor 126 assignment_commalist → . [CLOSE, COMMIT, CREATE, DELETE, FETCH, INSERT, OPEN, PROCEDURE, ROLLBACK, SELECT, UPDATE, WHERE, ';', '(', ','] 127 | . assignment 128 | . assignment_commalist ',' assignment 129 assignment → . column '=' scalar_exp 130 | . column '=' NULLX 131 update_statement_searched → UPDATE table SET . assignment_commalist opt_where_clause 251 column → . NAME NAME shift, and go to state 137 $default reduce using rule 126 (assignment_commalist) assignment_commalist go to state 138 assignment go to state 139 column go to state 140
258 sql → WHENEVER NOT FOUND . when_action 260 when_action → . GOTO NAME 261 | . CONTINUE CONTINUE shift, and go to state 92 GOTO shift, and go to state 93 when_action go to state 141
261 when_action → CONTINUE . $default reduce using rule 261 (when_action)
260 when_action → GOTO . NAME NAME shift, and go to state 142
259 sql → WHENEVER SQLERROR when_action . $default reduce using rule 259 (sql)
142 query_spec → SELECT opt_all_distinct . selection table_exp 143 selection → . scalar_exp_commalist 144 | . '*' 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 213 derived_column → . scalar_exp 214 | . scalar_exp AS column_ref 215 scalar_exp_commalist → . derived_column 216 | . scalar_exp_commalist ',' derived_column 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 '*' shift, and go to state 75 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 selection go to state 143 scalar_exp go to state 80 derived_column go to state 81 scalar_exp_commalist go to state 82 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
141 query_term → '(' query_exp ')' . $default reduce using rule 141 (query_term)
2 sql_list → sql_list sql ';' . $default reduce using rule 2 (sql_list)
139 query_exp → query_exp UNION ALL . query_term 140 query_term → . query_spec 141 | . '(' query_exp ')' 142 query_spec → . SELECT opt_all_distinct selection table_exp SELECT shift, and go to state 56 '(' shift, and go to state 13 query_term go to state 144 query_spec go to state 35
138 query_exp → query_exp UNION query_term . $default reduce using rule 138 (query_exp)
257 user → NAME . $default reduce using rule 257 (user)
4 schema → CREATE SCHEMA AUTHORIZATION user . opt_schema_element_list 5 opt_schema_element_list → . [';'] 6 | . schema_element_list 7 schema_element_list → . schema_element 8 | . schema_element_list schema_element 9 schema_element → . base_table_def 10 | . view_def 11 | . privilege_def 12 base_table_def → . CREATE TABLE table '(' base_table_element_commalist ')' 36 view_def → . CREATE VIEW table opt_column_commalist AS query_spec opt_with_check_option 41 privilege_def → . GRANT privileges ON table TO grantee_commalist opt_with_grant_option CREATE shift, and go to state 145 GRANT shift, and go to state 146 $default reduce using rule 5 (opt_schema_element_list) opt_schema_element_list go to state 147 schema_element_list go to state 148 schema_element go to state 149 base_table_def go to state 150 view_def go to state 151 privilege_def go to state 152
12 base_table_def → CREATE TABLE table '(' . base_table_element_commalist ')' 13 base_table_element_commalist → . base_table_element 14 | . base_table_element_commalist ',' base_table_element 15 base_table_element → . column_def 16 | . table_constraint_def 17 column_def → . column data_type column_def_opt_list 29 table_constraint_def → . UNIQUE '(' column_commalist ')' 30 | . PRIMARY KEY '(' column_commalist ')' 31 | . FOREIGN KEY '(' column_commalist ')' REFERENCES table 32 | . FOREIGN KEY '(' column_commalist ')' REFERENCES table '(' column_commalist ')' 33 | . CHECK '(' search_condition ')' 251 column → . NAME NAME shift, and go to state 137 CHECK shift, and go to state 153 FOREIGN shift, and go to state 154 PRIMARY shift, and go to state 155 UNIQUE shift, and go to state 156 base_table_element_commalist go to state 157 base_table_element go to state 158 column_def go to state 159 table_constraint_def go to state 160 column go to state 161
107 delete_statement_positioned → DELETE FROM table WHERE . CURRENT OF cursor 162 where_clause → WHERE . search_condition 169 search_condition → . search_condition OR search_condition 170 | . search_condition AND search_condition 171 | . NOT search_condition 172 | . '(' search_condition ')' 173 | . predicate 174 predicate → . comparison_predicate 175 | . between_predicate 176 | . like_predicate 177 | . test_for_null 178 | . in_predicate 179 | . all_or_any_predicate 180 | . existence_test 181 comparison_predicate → . scalar_exp COMPARISON scalar_exp 182 | . scalar_exp COMPARISON subquery 183 between_predicate → . scalar_exp NOT BETWEEN scalar_exp AND scalar_exp 184 | . scalar_exp BETWEEN scalar_exp AND scalar_exp 185 like_predicate → . scalar_exp NOT LIKE atom opt_escape 186 | . scalar_exp LIKE atom opt_escape 189 test_for_null → . column_ref IS NOT NULLX 190 | . column_ref IS NULLX 191 in_predicate → . scalar_exp NOT IN '(' subquery ')' 192 | . scalar_exp IN '(' subquery ')' 193 | . scalar_exp NOT IN '(' atom_commalist ')' 194 | . scalar_exp IN '(' atom_commalist ')' 197 all_or_any_predicate → . scalar_exp COMPARISON any_all_some subquery 201 existence_test → . EXISTS subquery 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 NOT shift, and go to state 162 '+' shift, and go to state 73 '-' shift, and go to state 74 CURRENT shift, and go to state 163 EXISTS shift, and go to state 164 USER shift, and go to state 76 '(' shift, and go to state 165 ':' shift, and go to state 78 search_condition go to state 166 predicate go to state 167 comparison_predicate go to state 168 between_predicate go to state 169 like_predicate go to state 170 test_for_null go to state 171 in_predicate go to state 172 all_or_any_predicate go to state 173 existence_test go to state 174 scalar_exp go to state 175 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 176 parameter go to state 88
108 delete_statement_searched → DELETE FROM table opt_where_clause . $default reduce using rule 108 (delete_statement_searched)
136 opt_where_clause → where_clause . $default reduce using rule 136 (opt_where_clause)
109 fetch_statement → FETCH cursor INTO target_commalist . [CLOSE, COMMIT, CREATE, DELETE, FETCH, INSERT, OPEN, PROCEDURE, ROLLBACK, SELECT, UPDATE, ';', '('] 133 target_commalist → target_commalist . ',' target ',' shift, and go to state 177 $default reduce using rule 109 (fetch_statement)
132 target_commalist → target . $default reduce using rule 132 (target_commalist)
134 target → parameter_ref . $default reduce using rule 134 (target)
34 column_commalist → . column 35 | . column_commalist ',' column 40 opt_column_commalist → '(' . column_commalist ')' 251 column → . NAME NAME shift, and go to state 137 column_commalist go to state 178 column go to state 179
110 insert_statement → INSERT INTO table opt_column_commalist . values_or_query_spec 111 values_or_query_spec → . VALUES '(' insert_atom_commalist ')' 112 | . query_spec 142 query_spec → . SELECT opt_all_distinct selection table_exp SELECT shift, and go to state 56 VALUES shift, and go to state 180 values_or_query_spec go to state 181 query_spec go to state 182
62 lang → COBOL . $default reduce using rule 62 (lang)
63 lang → FORTRAN . $default reduce using rule 63 (lang)
64 lang → PASCAL . $default reduce using rule 64 (lang)
65 lang → PLI . $default reduce using rule 65 (lang)
66 lang → C . $default reduce using rule 66 (lang)
67 lang → ADA . $default reduce using rule 67 (lang)
59 module_def → MODULE opt_module LANGUAGE lang . AUTHORIZATION user opt_cursor_def_list procedure_def_list AUTHORIZATION shift, and go to state 183
233 column_ref → NAME '.' . NAME 234 | NAME '.' . NAME '.' NAME NAME shift, and go to state 184
203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 223 | AMMSC '(' . '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 224 | AMMSC '(' . DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 225 | AMMSC '(' . ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 226 | AMMSC '(' . scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 '*' shift, and go to state 185 ALL shift, and go to state 186 DISTINCT shift, and go to state 187 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 188 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp 207 | '+' scalar_exp . [OR, AND, NOT, COMPARISON, '+', '-', '*', '/', AS, BETWEEN, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, FROM, GRANT, GROUP, HAVING, IN, INNER, INSERT, INTO, JOIN, LIKE, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] $default reduce using rule 207 (scalar_exp) Conflict between rule 207 and token '+' resolved as reduce ('+' < UMINUS). Conflict between rule 207 and token '-' resolved as reduce ('-' < UMINUS). Conflict between rule 207 and token '*' resolved as reduce ('*' < UMINUS). Conflict between rule 207 and token '/' resolved as reduce ('/' < UMINUS).
203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp 208 | '-' scalar_exp . [OR, AND, NOT, COMPARISON, '+', '-', '*', '/', AS, BETWEEN, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, FROM, GRANT, GROUP, HAVING, IN, INNER, INSERT, INTO, JOIN, LIKE, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] $default reduce using rule 208 (scalar_exp) Conflict between rule 208 and token '+' resolved as reduce ('+' < UMINUS). Conflict between rule 208 and token '-' resolved as reduce ('-' < UMINUS). Conflict between rule 208 and token '*' resolved as reduce ('*' < UMINUS). Conflict between rule 208 and token '/' resolved as reduce ('/' < UMINUS).
203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp 212 | '(' scalar_exp . ')' '+' shift, and go to state 128 '-' shift, and go to state 129 '*' shift, and go to state 130 '/' shift, and go to state 131 ')' shift, and go to state 189
254 parameter → ':' NAME . $default reduce using rule 254 (parameter)
146 from_clause → FROM . table_ref_commalist 147 table_ref_commalist → . table_ref 148 | . table_ref_commalist ',' table_ref 149 table_ref → . table 150 | . table range_variable 151 | . joined_table 152 joined_table → . cross_join 153 | . qualified_join 154 | . '(' joined_table ')' 155 cross_join → . table_ref CROSS JOIN table_ref 156 qualified_join → . table_ref join_type JOIN table_ref join_spec 230 table → . NAME 231 | . NAME '.' NAME NAME shift, and go to state 52 '(' shift, and go to state 190 table_ref_commalist go to state 191 table_ref go to state 192 joined_table go to state 193 cross_join go to state 194 qualified_join go to state 195 table go to state 196
119 select_statement → SELECT opt_all_distinct selection INTO . target_commalist table_exp 132 target_commalist → . target 133 | . target_commalist ',' target 134 target → . parameter_ref 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 254 parameter → . ':' NAME ':' shift, and go to state 78 target_commalist go to state 197 target go to state 107 parameter_ref go to state 108 parameter go to state 88
142 query_spec → SELECT opt_all_distinct selection table_exp . $default reduce using rule 142 (query_spec)
135 opt_where_clause → . [CLOSE, COMMIT, CREATE, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INSERT, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WITH, ';', '(', ')'] 136 | . where_clause 145 table_exp → from_clause . opt_where_clause opt_group_by_clause opt_having_clause opt_order_by_clause 162 where_clause → . WHERE search_condition WHERE shift, and go to state 198 $default reduce using rule 135 (opt_where_clause) opt_where_clause go to state 199 where_clause go to state 105
203 scalar_exp → . scalar_exp '+' scalar_exp 203 | scalar_exp '+' . scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 200 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 204 | scalar_exp '-' . scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 201 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 205 | scalar_exp '*' . scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 202 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 206 | scalar_exp '/' . scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 203 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
214 derived_column → scalar_exp AS . column_ref 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME NAME shift, and go to state 68 column_ref go to state 204
203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 213 derived_column → . scalar_exp 214 | . scalar_exp AS column_ref 216 scalar_exp_commalist → scalar_exp_commalist ',' . derived_column 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 80 derived_column go to state 205 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
222 parameter_ref → parameter INDICATOR . parameter 254 parameter → . ':' NAME ':' shift, and go to state 78 parameter go to state 206
221 parameter_ref → parameter parameter . $default reduce using rule 221 (parameter_ref)
231 table → NAME '.' NAME . $default reduce using rule 231 (table)
251 column → NAME . $default reduce using rule 251 (column)
125 update_statement_positioned → UPDATE table SET assignment_commalist . WHERE CURRENT OF cursor 128 assignment_commalist → assignment_commalist . ',' assignment 131 update_statement_searched → UPDATE table SET assignment_commalist . opt_where_clause 135 opt_where_clause → . [CLOSE, COMMIT, CREATE, DELETE, FETCH, INSERT, OPEN, PROCEDURE, ROLLBACK, SELECT, UPDATE, ';', '('] 136 | . where_clause 162 where_clause → . WHERE search_condition WHERE shift, and go to state 207 ',' shift, and go to state 208 $default reduce using rule 135 (opt_where_clause) opt_where_clause go to state 209 where_clause go to state 105
127 assignment_commalist → assignment . $default reduce using rule 127 (assignment_commalist)
129 assignment → column . '=' scalar_exp 130 | column . '=' NULLX '=' shift, and go to state 210
258 sql → WHENEVER NOT FOUND when_action . $default reduce using rule 258 (sql)
260 when_action → GOTO NAME . $default reduce using rule 260 (when_action)
142 query_spec → SELECT opt_all_distinct selection . table_exp 145 table_exp → . from_clause opt_where_clause opt_group_by_clause opt_having_clause opt_order_by_clause 146 from_clause → . FROM table_ref_commalist FROM shift, and go to state 124 table_exp go to state 126 from_clause go to state 127
139 query_exp → query_exp UNION ALL query_term . $default reduce using rule 139 (query_exp)
12 base_table_def → CREATE . TABLE table '(' base_table_element_commalist ')' 36 view_def → CREATE . VIEW table opt_column_commalist AS query_spec opt_with_check_option TABLE shift, and go to state 40 VIEW shift, and go to state 211
41 privilege_def → GRANT . privileges ON table TO grantee_commalist opt_with_grant_option 44 privileges → . ALL PRIVILEGES 45 | . ALL 46 | . operation_commalist 47 operation_commalist → . operation 48 | . operation_commalist ',' operation 49 operation → . SELECT 50 | . INSERT 51 | . DELETE 52 | . UPDATE opt_column_commalist 53 | . REFERENCES opt_column_commalist ALL shift, and go to state 212 DELETE shift, and go to state 213 INSERT shift, and go to state 214 REFERENCES shift, and go to state 215 SELECT shift, and go to state 216 UPDATE shift, and go to state 217 privileges go to state 218 operation_commalist go to state 219 operation go to state 220
4 schema → CREATE SCHEMA AUTHORIZATION user opt_schema_element_list . $default reduce using rule 4 (schema)
6 opt_schema_element_list → schema_element_list . [';'] 8 schema_element_list → schema_element_list . schema_element 9 schema_element → . base_table_def 10 | . view_def 11 | . privilege_def 12 base_table_def → . CREATE TABLE table '(' base_table_element_commalist ')' 36 view_def → . CREATE VIEW table opt_column_commalist AS query_spec opt_with_check_option 41 privilege_def → . GRANT privileges ON table TO grantee_commalist opt_with_grant_option CREATE shift, and go to state 145 GRANT shift, and go to state 146 $default reduce using rule 6 (opt_schema_element_list) schema_element go to state 221 base_table_def go to state 150 view_def go to state 151 privilege_def go to state 152
7 schema_element_list → schema_element . $default reduce using rule 7 (schema_element_list)
9 schema_element → base_table_def . $default reduce using rule 9 (schema_element)
10 schema_element → view_def . $default reduce using rule 10 (schema_element)
11 schema_element → privilege_def . $default reduce using rule 11 (schema_element)
33 table_constraint_def → CHECK . '(' search_condition ')' '(' shift, and go to state 222
31 table_constraint_def → FOREIGN . KEY '(' column_commalist ')' REFERENCES table 32 | FOREIGN . KEY '(' column_commalist ')' REFERENCES table '(' column_commalist ')' KEY shift, and go to state 223
30 table_constraint_def → PRIMARY . KEY '(' column_commalist ')' KEY shift, and go to state 224
29 table_constraint_def → UNIQUE . '(' column_commalist ')' '(' shift, and go to state 225
12 base_table_def → CREATE TABLE table '(' base_table_element_commalist . ')' 14 base_table_element_commalist → base_table_element_commalist . ',' base_table_element ')' shift, and go to state 226 ',' shift, and go to state 227
13 base_table_element_commalist → base_table_element . $default reduce using rule 13 (base_table_element_commalist)
15 base_table_element → column_def . $default reduce using rule 15 (base_table_element)
16 base_table_element → table_constraint_def . $default reduce using rule 16 (base_table_element)
17 column_def → column . data_type column_def_opt_list 235 data_type → . CHARACTER 236 | . CHARACTER '(' INTNUM ')' 237 | . VARCHAR 238 | . VARCHAR '(' INTNUM ')' 239 | . NUMERIC 240 | . NUMERIC '(' INTNUM ')' 241 | . NUMERIC '(' INTNUM ',' INTNUM ')' 242 | . DECIMAL 243 | . DECIMAL '(' INTNUM ')' 244 | . DECIMAL '(' INTNUM ',' INTNUM ')' 245 | . INTEGER 246 | . SMALLINT 247 | . FLOAT 248 | . FLOAT '(' INTNUM ')' 249 | . REAL 250 | . DOUBLE PRECISION CHARACTER shift, and go to state 228 DECIMAL shift, and go to state 229 DOUBLE shift, and go to state 230 FLOAT shift, and go to state 231 INTEGER shift, and go to state 232 NUMERIC shift, and go to state 233 REAL shift, and go to state 234 SMALLINT shift, and go to state 235 VARCHAR shift, and go to state 236 data_type go to state 237
169 search_condition → . search_condition OR search_condition 170 | . search_condition AND search_condition 171 | . NOT search_condition 171 | NOT . search_condition 172 | . '(' search_condition ')' 173 | . predicate 174 predicate → . comparison_predicate 175 | . between_predicate 176 | . like_predicate 177 | . test_for_null 178 | . in_predicate 179 | . all_or_any_predicate 180 | . existence_test 181 comparison_predicate → . scalar_exp COMPARISON scalar_exp 182 | . scalar_exp COMPARISON subquery 183 between_predicate → . scalar_exp NOT BETWEEN scalar_exp AND scalar_exp 184 | . scalar_exp BETWEEN scalar_exp AND scalar_exp 185 like_predicate → . scalar_exp NOT LIKE atom opt_escape 186 | . scalar_exp LIKE atom opt_escape 189 test_for_null → . column_ref IS NOT NULLX 190 | . column_ref IS NULLX 191 in_predicate → . scalar_exp NOT IN '(' subquery ')' 192 | . scalar_exp IN '(' subquery ')' 193 | . scalar_exp NOT IN '(' atom_commalist ')' 194 | . scalar_exp IN '(' atom_commalist ')' 197 all_or_any_predicate → . scalar_exp COMPARISON any_all_some subquery 201 existence_test → . EXISTS subquery 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 NOT shift, and go to state 162 '+' shift, and go to state 73 '-' shift, and go to state 74 EXISTS shift, and go to state 164 USER shift, and go to state 76 '(' shift, and go to state 165 ':' shift, and go to state 78 search_condition go to state 238 predicate go to state 167 comparison_predicate go to state 168 between_predicate go to state 169 like_predicate go to state 170 test_for_null go to state 171 in_predicate go to state 172 all_or_any_predicate go to state 173 existence_test go to state 174 scalar_exp go to state 175 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 176 parameter go to state 88
107 delete_statement_positioned → DELETE FROM table WHERE CURRENT . OF cursor OF shift, and go to state 239
201 existence_test → EXISTS . subquery 202 subquery → . '(' SELECT opt_all_distinct selection table_exp ')' '(' shift, and go to state 240 subquery go to state 241
169 search_condition → . search_condition OR search_condition 170 | . search_condition AND search_condition 171 | . NOT search_condition 172 | . '(' search_condition ')' 172 | '(' . search_condition ')' 173 | . predicate 174 predicate → . comparison_predicate 175 | . between_predicate 176 | . like_predicate 177 | . test_for_null 178 | . in_predicate 179 | . all_or_any_predicate 180 | . existence_test 181 comparison_predicate → . scalar_exp COMPARISON scalar_exp 182 | . scalar_exp COMPARISON subquery 183 between_predicate → . scalar_exp NOT BETWEEN scalar_exp AND scalar_exp 184 | . scalar_exp BETWEEN scalar_exp AND scalar_exp 185 like_predicate → . scalar_exp NOT LIKE atom opt_escape 186 | . scalar_exp LIKE atom opt_escape 189 test_for_null → . column_ref IS NOT NULLX 190 | . column_ref IS NULLX 191 in_predicate → . scalar_exp NOT IN '(' subquery ')' 192 | . scalar_exp IN '(' subquery ')' 193 | . scalar_exp NOT IN '(' atom_commalist ')' 194 | . scalar_exp IN '(' atom_commalist ')' 197 all_or_any_predicate → . scalar_exp COMPARISON any_all_some subquery 201 existence_test → . EXISTS subquery 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 212 | '(' . scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 NOT shift, and go to state 162 '+' shift, and go to state 73 '-' shift, and go to state 74 EXISTS shift, and go to state 164 USER shift, and go to state 76 '(' shift, and go to state 165 ':' shift, and go to state 78 search_condition go to state 242 predicate go to state 167 comparison_predicate go to state 168 between_predicate go to state 169 like_predicate go to state 170 test_for_null go to state 171 in_predicate go to state 172 all_or_any_predicate go to state 173 existence_test go to state 174 scalar_exp go to state 243 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 176 parameter go to state 88
162 where_clause → WHERE search_condition . [CLOSE, COMMIT, CREATE, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INSERT, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WITH, ';', '(', ')'] 169 search_condition → search_condition . OR search_condition 170 | search_condition . AND search_condition OR shift, and go to state 244 AND shift, and go to state 245 $default reduce using rule 162 (where_clause)
173 search_condition → predicate . $default reduce using rule 173 (search_condition)
174 predicate → comparison_predicate . $default reduce using rule 174 (predicate)
175 predicate → between_predicate . $default reduce using rule 175 (predicate)
176 predicate → like_predicate . $default reduce using rule 176 (predicate)
177 predicate → test_for_null . $default reduce using rule 177 (predicate)
178 predicate → in_predicate . $default reduce using rule 178 (predicate)
179 predicate → all_or_any_predicate . $default reduce using rule 179 (predicate)
180 predicate → existence_test . $default reduce using rule 180 (predicate)
181 comparison_predicate → scalar_exp . COMPARISON scalar_exp 182 | scalar_exp . COMPARISON subquery 183 between_predicate → scalar_exp . NOT BETWEEN scalar_exp AND scalar_exp 184 | scalar_exp . BETWEEN scalar_exp AND scalar_exp 185 like_predicate → scalar_exp . NOT LIKE atom opt_escape 186 | scalar_exp . LIKE atom opt_escape 191 in_predicate → scalar_exp . NOT IN '(' subquery ')' 192 | scalar_exp . IN '(' subquery ')' 193 | scalar_exp . NOT IN '(' atom_commalist ')' 194 | scalar_exp . IN '(' atom_commalist ')' 197 all_or_any_predicate → scalar_exp . COMPARISON any_all_some subquery 203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp NOT shift, and go to state 246 COMPARISON shift, and go to state 247 '+' shift, and go to state 128 '-' shift, and go to state 129 '*' shift, and go to state 130 '/' shift, and go to state 131 BETWEEN shift, and go to state 248 IN shift, and go to state 249 LIKE shift, and go to state 250
189 test_for_null → column_ref . IS NOT NULLX 190 | column_ref . IS NULLX 210 scalar_exp → column_ref . [NOT, COMPARISON, '+', '-', '*', '/', BETWEEN, IN, LIKE, ')'] IS shift, and go to state 251 $default reduce using rule 210 (scalar_exp)
133 target_commalist → target_commalist ',' . target 134 target → . parameter_ref 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 254 parameter → . ':' NAME ':' shift, and go to state 78 target go to state 252 parameter_ref go to state 108 parameter go to state 88
35 column_commalist → column_commalist . ',' column 40 opt_column_commalist → '(' column_commalist . ')' ')' shift, and go to state 253 ',' shift, and go to state 254
34 column_commalist → column . $default reduce using rule 34 (column_commalist)
111 values_or_query_spec → VALUES . '(' insert_atom_commalist ')' '(' shift, and go to state 255
110 insert_statement → INSERT INTO table opt_column_commalist values_or_query_spec . $default reduce using rule 110 (insert_statement)
112 values_or_query_spec → query_spec . $default reduce using rule 112 (values_or_query_spec)
59 module_def → MODULE opt_module LANGUAGE lang AUTHORIZATION . user opt_cursor_def_list procedure_def_list 257 user → . NAME NAME shift, and go to state 100 user go to state 256
233 column_ref → NAME '.' NAME . [OR, AND, NOT, COMPARISON, '+', '-', '*', '/', AS, ASC, BETWEEN, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, DESC, FETCH, FROM, GRANT, GROUP, HAVING, IN, INNER, INSERT, INTO, IS, JOIN, LIKE, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 234 | NAME '.' NAME . '.' NAME '.' shift, and go to state 257 $default reduce using rule 233 (column_ref)
223 function_ref → AMMSC '(' '*' . ')' ')' shift, and go to state 258
203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 225 | AMMSC '(' ALL . scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 259 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
224 function_ref → AMMSC '(' DISTINCT . column_ref ')' 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME NAME shift, and go to state 68 column_ref go to state 260
203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp 226 function_ref → AMMSC '(' scalar_exp . ')' '+' shift, and go to state 128 '-' shift, and go to state 129 '*' shift, and go to state 130 '/' shift, and go to state 131 ')' shift, and go to state 261
212 scalar_exp → '(' scalar_exp ')' . $default reduce using rule 212 (scalar_exp)
149 table_ref → . table 150 | . table range_variable 151 | . joined_table 152 joined_table → . cross_join 153 | . qualified_join 154 | . '(' joined_table ')' 154 | '(' . joined_table ')' 155 cross_join → . table_ref CROSS JOIN table_ref 156 qualified_join → . table_ref join_type JOIN table_ref join_spec 230 table → . NAME 231 | . NAME '.' NAME NAME shift, and go to state 52 '(' shift, and go to state 190 table_ref go to state 262 joined_table go to state 263 cross_join go to state 194 qualified_join go to state 195 table go to state 196
146 from_clause → FROM table_ref_commalist . [CLOSE, COMMIT, CREATE, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INSERT, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')'] 148 table_ref_commalist → table_ref_commalist . ',' table_ref ',' shift, and go to state 264 $default reduce using rule 146 (from_clause)
147 table_ref_commalist → table_ref . [CLOSE, COMMIT, CREATE, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INSERT, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 155 cross_join → table_ref . CROSS JOIN table_ref 156 qualified_join → table_ref . join_type JOIN table_ref join_spec 157 join_type → . [JOIN] 158 | . INNER CROSS shift, and go to state 265 INNER shift, and go to state 266 JOIN reduce using rule 157 (join_type) $default reduce using rule 147 (table_ref_commalist) join_type go to state 267
151 table_ref → joined_table . $default reduce using rule 151 (table_ref)
152 joined_table → cross_join . $default reduce using rule 152 (joined_table)
153 joined_table → qualified_join . $default reduce using rule 153 (joined_table)
149 table_ref → table . [CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INNER, INSERT, JOIN, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 150 | table . range_variable 256 range_variable → . NAME NAME shift, and go to state 268 $default reduce using rule 149 (table_ref) range_variable go to state 269
119 select_statement → SELECT opt_all_distinct selection INTO target_commalist . table_exp 133 target_commalist → target_commalist . ',' target 145 table_exp → . from_clause opt_where_clause opt_group_by_clause opt_having_clause opt_order_by_clause 146 from_clause → . FROM table_ref_commalist FROM shift, and go to state 124 ',' shift, and go to state 177 table_exp go to state 270 from_clause go to state 127
162 where_clause → WHERE . search_condition 169 search_condition → . search_condition OR search_condition 170 | . search_condition AND search_condition 171 | . NOT search_condition 172 | . '(' search_condition ')' 173 | . predicate 174 predicate → . comparison_predicate 175 | . between_predicate 176 | . like_predicate 177 | . test_for_null 178 | . in_predicate 179 | . all_or_any_predicate 180 | . existence_test 181 comparison_predicate → . scalar_exp COMPARISON scalar_exp 182 | . scalar_exp COMPARISON subquery 183 between_predicate → . scalar_exp NOT BETWEEN scalar_exp AND scalar_exp 184 | . scalar_exp BETWEEN scalar_exp AND scalar_exp 185 like_predicate → . scalar_exp NOT LIKE atom opt_escape 186 | . scalar_exp LIKE atom opt_escape 189 test_for_null → . column_ref IS NOT NULLX 190 | . column_ref IS NULLX 191 in_predicate → . scalar_exp NOT IN '(' subquery ')' 192 | . scalar_exp IN '(' subquery ')' 193 | . scalar_exp NOT IN '(' atom_commalist ')' 194 | . scalar_exp IN '(' atom_commalist ')' 197 all_or_any_predicate → . scalar_exp COMPARISON any_all_some subquery 201 existence_test → . EXISTS subquery 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 NOT shift, and go to state 162 '+' shift, and go to state 73 '-' shift, and go to state 74 EXISTS shift, and go to state 164 USER shift, and go to state 76 '(' shift, and go to state 165 ':' shift, and go to state 78 search_condition go to state 166 predicate go to state 167 comparison_predicate go to state 168 between_predicate go to state 169 like_predicate go to state 170 test_for_null go to state 171 in_predicate go to state 172 all_or_any_predicate go to state 173 existence_test go to state 174 scalar_exp go to state 175 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 176 parameter go to state 88
145 table_exp → from_clause opt_where_clause . opt_group_by_clause opt_having_clause opt_order_by_clause 163 opt_group_by_clause → . [CLOSE, COMMIT, CREATE, DECLARE, DELETE, FETCH, GRANT, HAVING, INSERT, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WITH, ';', '(', ')'] 164 | . GROUP BY column_ref_commalist GROUP shift, and go to state 271 $default reduce using rule 163 (opt_group_by_clause) opt_group_by_clause go to state 272
203 scalar_exp → scalar_exp . '+' scalar_exp 203 | scalar_exp '+' scalar_exp . [OR, AND, NOT, COMPARISON, '+', '-', AS, BETWEEN, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, FROM, GRANT, GROUP, HAVING, IN, INNER, INSERT, INTO, JOIN, LIKE, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp '*' shift, and go to state 130 '/' shift, and go to state 131 $default reduce using rule 203 (scalar_exp) Conflict between rule 203 and token '+' resolved as reduce (%left '+'). Conflict between rule 203 and token '-' resolved as reduce (%left '-'). Conflict between rule 203 and token '*' resolved as shift ('+' < '*'). Conflict between rule 203 and token '/' resolved as shift ('+' < '/').
203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 204 | scalar_exp '-' scalar_exp . [OR, AND, NOT, COMPARISON, '+', '-', AS, BETWEEN, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, FROM, GRANT, GROUP, HAVING, IN, INNER, INSERT, INTO, JOIN, LIKE, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp '*' shift, and go to state 130 '/' shift, and go to state 131 $default reduce using rule 204 (scalar_exp) Conflict between rule 204 and token '+' resolved as reduce (%left '+'). Conflict between rule 204 and token '-' resolved as reduce (%left '-'). Conflict between rule 204 and token '*' resolved as shift ('-' < '*'). Conflict between rule 204 and token '/' resolved as shift ('-' < '/').
203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 205 | scalar_exp '*' scalar_exp . [OR, AND, NOT, COMPARISON, '+', '-', '*', '/', AS, BETWEEN, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, FROM, GRANT, GROUP, HAVING, IN, INNER, INSERT, INTO, JOIN, LIKE, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 206 | scalar_exp . '/' scalar_exp $default reduce using rule 205 (scalar_exp) Conflict between rule 205 and token '+' resolved as reduce ('+' < '*'). Conflict between rule 205 and token '-' resolved as reduce ('-' < '*'). Conflict between rule 205 and token '*' resolved as reduce (%left '*'). Conflict between rule 205 and token '/' resolved as reduce (%left '/').
203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp 206 | scalar_exp '/' scalar_exp . [OR, AND, NOT, COMPARISON, '+', '-', '*', '/', AS, BETWEEN, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, FROM, GRANT, GROUP, HAVING, IN, INNER, INSERT, INTO, JOIN, LIKE, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] $default reduce using rule 206 (scalar_exp) Conflict between rule 206 and token '+' resolved as reduce ('+' < '/'). Conflict between rule 206 and token '-' resolved as reduce ('-' < '/'). Conflict between rule 206 and token '*' resolved as reduce (%left '*'). Conflict between rule 206 and token '/' resolved as reduce (%left '/').
214 derived_column → scalar_exp AS column_ref . $default reduce using rule 214 (derived_column)
216 scalar_exp_commalist → scalar_exp_commalist ',' derived_column . $default reduce using rule 216 (scalar_exp_commalist)
222 parameter_ref → parameter INDICATOR parameter . $default reduce using rule 222 (parameter_ref)
125 update_statement_positioned → UPDATE table SET assignment_commalist WHERE . CURRENT OF cursor 162 where_clause → WHERE . search_condition 169 search_condition → . search_condition OR search_condition 170 | . search_condition AND search_condition 171 | . NOT search_condition 172 | . '(' search_condition ')' 173 | . predicate 174 predicate → . comparison_predicate 175 | . between_predicate 176 | . like_predicate 177 | . test_for_null 178 | . in_predicate 179 | . all_or_any_predicate 180 | . existence_test 181 comparison_predicate → . scalar_exp COMPARISON scalar_exp 182 | . scalar_exp COMPARISON subquery 183 between_predicate → . scalar_exp NOT BETWEEN scalar_exp AND scalar_exp 184 | . scalar_exp BETWEEN scalar_exp AND scalar_exp 185 like_predicate → . scalar_exp NOT LIKE atom opt_escape 186 | . scalar_exp LIKE atom opt_escape 189 test_for_null → . column_ref IS NOT NULLX 190 | . column_ref IS NULLX 191 in_predicate → . scalar_exp NOT IN '(' subquery ')' 192 | . scalar_exp IN '(' subquery ')' 193 | . scalar_exp NOT IN '(' atom_commalist ')' 194 | . scalar_exp IN '(' atom_commalist ')' 197 all_or_any_predicate → . scalar_exp COMPARISON any_all_some subquery 201 existence_test → . EXISTS subquery 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 NOT shift, and go to state 162 '+' shift, and go to state 73 '-' shift, and go to state 74 CURRENT shift, and go to state 273 EXISTS shift, and go to state 164 USER shift, and go to state 76 '(' shift, and go to state 165 ':' shift, and go to state 78 search_condition go to state 166 predicate go to state 167 comparison_predicate go to state 168 between_predicate go to state 169 like_predicate go to state 170 test_for_null go to state 171 in_predicate go to state 172 all_or_any_predicate go to state 173 existence_test go to state 174 scalar_exp go to state 175 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 176 parameter go to state 88
128 assignment_commalist → assignment_commalist ',' . assignment 129 assignment → . column '=' scalar_exp 130 | . column '=' NULLX 251 column → . NAME NAME shift, and go to state 137 assignment go to state 274 column go to state 140
131 update_statement_searched → UPDATE table SET assignment_commalist opt_where_clause . $default reduce using rule 131 (update_statement_searched)
129 assignment → column '=' . scalar_exp 130 | column '=' . NULLX 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 NULLX shift, and go to state 275 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 276 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
36 view_def → CREATE VIEW . table opt_column_commalist AS query_spec opt_with_check_option 230 table → . NAME 231 | . NAME '.' NAME NAME shift, and go to state 52 table go to state 277
44 privileges → ALL . PRIVILEGES 45 | ALL . [ON] PRIVILEGES shift, and go to state 278 $default reduce using rule 45 (privileges)
51 operation → DELETE . $default reduce using rule 51 (operation)
50 operation → INSERT . $default reduce using rule 50 (operation)
39 opt_column_commalist → . [ON, ','] 40 | . '(' column_commalist ')' 53 operation → REFERENCES . opt_column_commalist '(' shift, and go to state 109 $default reduce using rule 39 (opt_column_commalist) opt_column_commalist go to state 279
49 operation → SELECT . $default reduce using rule 49 (operation)
39 opt_column_commalist → . [ON, ','] 40 | . '(' column_commalist ')' 52 operation → UPDATE . opt_column_commalist '(' shift, and go to state 109 $default reduce using rule 39 (opt_column_commalist) opt_column_commalist go to state 280
41 privilege_def → GRANT privileges . ON table TO grantee_commalist opt_with_grant_option ON shift, and go to state 281
46 privileges → operation_commalist . [ON] 48 operation_commalist → operation_commalist . ',' operation ',' shift, and go to state 282 $default reduce using rule 46 (privileges)
47 operation_commalist → operation . $default reduce using rule 47 (operation_commalist)
8 schema_element_list → schema_element_list schema_element . $default reduce using rule 8 (schema_element_list)
33 table_constraint_def → CHECK '(' . search_condition ')' 169 search_condition → . search_condition OR search_condition 170 | . search_condition AND search_condition 171 | . NOT search_condition 172 | . '(' search_condition ')' 173 | . predicate 174 predicate → . comparison_predicate 175 | . between_predicate 176 | . like_predicate 177 | . test_for_null 178 | . in_predicate 179 | . all_or_any_predicate 180 | . existence_test 181 comparison_predicate → . scalar_exp COMPARISON scalar_exp 182 | . scalar_exp COMPARISON subquery 183 between_predicate → . scalar_exp NOT BETWEEN scalar_exp AND scalar_exp 184 | . scalar_exp BETWEEN scalar_exp AND scalar_exp 185 like_predicate → . scalar_exp NOT LIKE atom opt_escape 186 | . scalar_exp LIKE atom opt_escape 189 test_for_null → . column_ref IS NOT NULLX 190 | . column_ref IS NULLX 191 in_predicate → . scalar_exp NOT IN '(' subquery ')' 192 | . scalar_exp IN '(' subquery ')' 193 | . scalar_exp NOT IN '(' atom_commalist ')' 194 | . scalar_exp IN '(' atom_commalist ')' 197 all_or_any_predicate → . scalar_exp COMPARISON any_all_some subquery 201 existence_test → . EXISTS subquery 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 NOT shift, and go to state 162 '+' shift, and go to state 73 '-' shift, and go to state 74 EXISTS shift, and go to state 164 USER shift, and go to state 76 '(' shift, and go to state 165 ':' shift, and go to state 78 search_condition go to state 283 predicate go to state 167 comparison_predicate go to state 168 between_predicate go to state 169 like_predicate go to state 170 test_for_null go to state 171 in_predicate go to state 172 all_or_any_predicate go to state 173 existence_test go to state 174 scalar_exp go to state 175 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 176 parameter go to state 88
31 table_constraint_def → FOREIGN KEY . '(' column_commalist ')' REFERENCES table 32 | FOREIGN KEY . '(' column_commalist ')' REFERENCES table '(' column_commalist ')' '(' shift, and go to state 284
30 table_constraint_def → PRIMARY KEY . '(' column_commalist ')' '(' shift, and go to state 285
29 table_constraint_def → UNIQUE '(' . column_commalist ')' 34 column_commalist → . column 35 | . column_commalist ',' column 251 column → . NAME NAME shift, and go to state 137 column_commalist go to state 286 column go to state 179
12 base_table_def → CREATE TABLE table '(' base_table_element_commalist ')' . $default reduce using rule 12 (base_table_def)
14 base_table_element_commalist → base_table_element_commalist ',' . base_table_element 15 base_table_element → . column_def 16 | . table_constraint_def 17 column_def → . column data_type column_def_opt_list 29 table_constraint_def → . UNIQUE '(' column_commalist ')' 30 | . PRIMARY KEY '(' column_commalist ')' 31 | . FOREIGN KEY '(' column_commalist ')' REFERENCES table 32 | . FOREIGN KEY '(' column_commalist ')' REFERENCES table '(' column_commalist ')' 33 | . CHECK '(' search_condition ')' 251 column → . NAME NAME shift, and go to state 137 CHECK shift, and go to state 153 FOREIGN shift, and go to state 154 PRIMARY shift, and go to state 155 UNIQUE shift, and go to state 156 base_table_element go to state 287 column_def go to state 159 table_constraint_def go to state 160 column go to state 161
235 data_type → CHARACTER . [NOT, CHECK, DEFAULT, REFERENCES, SQLCODE, ';', ')', ',', ':'] 236 | CHARACTER . '(' INTNUM ')' '(' shift, and go to state 288 $default reduce using rule 235 (data_type)
242 data_type → DECIMAL . [NOT, CHECK, DEFAULT, REFERENCES, SQLCODE, ';', ')', ',', ':'] 243 | DECIMAL . '(' INTNUM ')' 244 | DECIMAL . '(' INTNUM ',' INTNUM ')' '(' shift, and go to state 289 $default reduce using rule 242 (data_type)
250 data_type → DOUBLE . PRECISION PRECISION shift, and go to state 290
247 data_type → FLOAT . [NOT, CHECK, DEFAULT, REFERENCES, SQLCODE, ';', ')', ',', ':'] 248 | FLOAT . '(' INTNUM ')' '(' shift, and go to state 291 $default reduce using rule 247 (data_type)
245 data_type → INTEGER . $default reduce using rule 245 (data_type)
239 data_type → NUMERIC . [NOT, CHECK, DEFAULT, REFERENCES, SQLCODE, ';', ')', ',', ':'] 240 | NUMERIC . '(' INTNUM ')' 241 | NUMERIC . '(' INTNUM ',' INTNUM ')' '(' shift, and go to state 292 $default reduce using rule 239 (data_type)
249 data_type → REAL . $default reduce using rule 249 (data_type)
246 data_type → SMALLINT . $default reduce using rule 246 (data_type)
237 data_type → VARCHAR . [NOT, CHECK, DEFAULT, REFERENCES, SQLCODE, ';', ')', ',', ':'] 238 | VARCHAR . '(' INTNUM ')' '(' shift, and go to state 293 $default reduce using rule 237 (data_type)
17 column_def → column data_type . column_def_opt_list 18 column_def_opt_list → . 19 | . column_def_opt_list column_def_opt $default reduce using rule 18 (column_def_opt_list) column_def_opt_list go to state 294
169 search_condition → search_condition . OR search_condition 170 | search_condition . AND search_condition 171 | NOT search_condition . [OR, AND, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INNER, INSERT, JOIN, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] $default reduce using rule 171 (search_condition) Conflict between rule 171 and token OR resolved as reduce (OR < NOT). Conflict between rule 171 and token AND resolved as reduce (AND < NOT).
107 delete_statement_positioned → DELETE FROM table WHERE CURRENT OF . cursor 252 cursor → . NAME NAME shift, and go to state 36 cursor go to state 295
202 subquery → '(' . SELECT opt_all_distinct selection table_exp ')' SELECT shift, and go to state 296
201 existence_test → EXISTS subquery . $default reduce using rule 201 (existence_test)
169 search_condition → search_condition . OR search_condition 170 | search_condition . AND search_condition 172 | '(' search_condition . ')' OR shift, and go to state 244 AND shift, and go to state 245 ')' shift, and go to state 297
181 comparison_predicate → scalar_exp . COMPARISON scalar_exp 182 | scalar_exp . COMPARISON subquery 183 between_predicate → scalar_exp . NOT BETWEEN scalar_exp AND scalar_exp 184 | scalar_exp . BETWEEN scalar_exp AND scalar_exp 185 like_predicate → scalar_exp . NOT LIKE atom opt_escape 186 | scalar_exp . LIKE atom opt_escape 191 in_predicate → scalar_exp . NOT IN '(' subquery ')' 192 | scalar_exp . IN '(' subquery ')' 193 | scalar_exp . NOT IN '(' atom_commalist ')' 194 | scalar_exp . IN '(' atom_commalist ')' 197 all_or_any_predicate → scalar_exp . COMPARISON any_all_some subquery 203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp 212 | '(' scalar_exp . ')' NOT shift, and go to state 246 COMPARISON shift, and go to state 247 '+' shift, and go to state 128 '-' shift, and go to state 129 '*' shift, and go to state 130 '/' shift, and go to state 131 BETWEEN shift, and go to state 248 IN shift, and go to state 249 LIKE shift, and go to state 250 ')' shift, and go to state 189
169 search_condition → . search_condition OR search_condition 169 | search_condition OR . search_condition 170 | . search_condition AND search_condition 171 | . NOT search_condition 172 | . '(' search_condition ')' 173 | . predicate 174 predicate → . comparison_predicate 175 | . between_predicate 176 | . like_predicate 177 | . test_for_null 178 | . in_predicate 179 | . all_or_any_predicate 180 | . existence_test 181 comparison_predicate → . scalar_exp COMPARISON scalar_exp 182 | . scalar_exp COMPARISON subquery 183 between_predicate → . scalar_exp NOT BETWEEN scalar_exp AND scalar_exp 184 | . scalar_exp BETWEEN scalar_exp AND scalar_exp 185 like_predicate → . scalar_exp NOT LIKE atom opt_escape 186 | . scalar_exp LIKE atom opt_escape 189 test_for_null → . column_ref IS NOT NULLX 190 | . column_ref IS NULLX 191 in_predicate → . scalar_exp NOT IN '(' subquery ')' 192 | . scalar_exp IN '(' subquery ')' 193 | . scalar_exp NOT IN '(' atom_commalist ')' 194 | . scalar_exp IN '(' atom_commalist ')' 197 all_or_any_predicate → . scalar_exp COMPARISON any_all_some subquery 201 existence_test → . EXISTS subquery 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 NOT shift, and go to state 162 '+' shift, and go to state 73 '-' shift, and go to state 74 EXISTS shift, and go to state 164 USER shift, and go to state 76 '(' shift, and go to state 165 ':' shift, and go to state 78 search_condition go to state 298 predicate go to state 167 comparison_predicate go to state 168 between_predicate go to state 169 like_predicate go to state 170 test_for_null go to state 171 in_predicate go to state 172 all_or_any_predicate go to state 173 existence_test go to state 174 scalar_exp go to state 175 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 176 parameter go to state 88
169 search_condition → . search_condition OR search_condition 170 | . search_condition AND search_condition 170 | search_condition AND . search_condition 171 | . NOT search_condition 172 | . '(' search_condition ')' 173 | . predicate 174 predicate → . comparison_predicate 175 | . between_predicate 176 | . like_predicate 177 | . test_for_null 178 | . in_predicate 179 | . all_or_any_predicate 180 | . existence_test 181 comparison_predicate → . scalar_exp COMPARISON scalar_exp 182 | . scalar_exp COMPARISON subquery 183 between_predicate → . scalar_exp NOT BETWEEN scalar_exp AND scalar_exp 184 | . scalar_exp BETWEEN scalar_exp AND scalar_exp 185 like_predicate → . scalar_exp NOT LIKE atom opt_escape 186 | . scalar_exp LIKE atom opt_escape 189 test_for_null → . column_ref IS NOT NULLX 190 | . column_ref IS NULLX 191 in_predicate → . scalar_exp NOT IN '(' subquery ')' 192 | . scalar_exp IN '(' subquery ')' 193 | . scalar_exp NOT IN '(' atom_commalist ')' 194 | . scalar_exp IN '(' atom_commalist ')' 197 all_or_any_predicate → . scalar_exp COMPARISON any_all_some subquery 201 existence_test → . EXISTS subquery 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 NOT shift, and go to state 162 '+' shift, and go to state 73 '-' shift, and go to state 74 EXISTS shift, and go to state 164 USER shift, and go to state 76 '(' shift, and go to state 165 ':' shift, and go to state 78 search_condition go to state 299 predicate go to state 167 comparison_predicate go to state 168 between_predicate go to state 169 like_predicate go to state 170 test_for_null go to state 171 in_predicate go to state 172 all_or_any_predicate go to state 173 existence_test go to state 174 scalar_exp go to state 175 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 176 parameter go to state 88
183 between_predicate → scalar_exp NOT . BETWEEN scalar_exp AND scalar_exp 185 like_predicate → scalar_exp NOT . LIKE atom opt_escape 191 in_predicate → scalar_exp NOT . IN '(' subquery ')' 193 | scalar_exp NOT . IN '(' atom_commalist ')' BETWEEN shift, and go to state 300 IN shift, and go to state 301 LIKE shift, and go to state 302
181 comparison_predicate → scalar_exp COMPARISON . scalar_exp 182 | scalar_exp COMPARISON . subquery 197 all_or_any_predicate → scalar_exp COMPARISON . any_all_some subquery 198 any_all_some → . ANY 199 | . ALL 200 | . SOME 202 subquery → . '(' SELECT opt_all_distinct selection table_exp ')' 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 ALL shift, and go to state 303 ANY shift, and go to state 304 SOME shift, and go to state 305 USER shift, and go to state 76 '(' shift, and go to state 306 ':' shift, and go to state 78 any_all_some go to state 307 subquery go to state 308 scalar_exp go to state 309 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
184 between_predicate → scalar_exp BETWEEN . scalar_exp AND scalar_exp 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 310 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
192 in_predicate → scalar_exp IN . '(' subquery ')' 194 | scalar_exp IN . '(' atom_commalist ')' '(' shift, and go to state 311
186 like_predicate → scalar_exp LIKE . atom opt_escape 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 254 parameter → . ':' NAME STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 USER shift, and go to state 76 ':' shift, and go to state 78 atom go to state 312 parameter_ref go to state 84 literal go to state 86 parameter go to state 88
189 test_for_null → column_ref IS . NOT NULLX 190 | column_ref IS . NULLX NOT shift, and go to state 313 NULLX shift, and go to state 314
133 target_commalist → target_commalist ',' target . $default reduce using rule 133 (target_commalist)
40 opt_column_commalist → '(' column_commalist ')' . $default reduce using rule 40 (opt_column_commalist)
35 column_commalist → column_commalist ',' . column 251 column → . NAME NAME shift, and go to state 137 column go to state 315
111 values_or_query_spec → VALUES '(' . insert_atom_commalist ')' 113 insert_atom_commalist → . insert_atom 114 | . insert_atom_commalist ',' insert_atom 115 insert_atom → . atom 116 | . NULLX 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 254 parameter → . ':' NAME STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 NULLX shift, and go to state 316 USER shift, and go to state 76 ':' shift, and go to state 78 insert_atom_commalist go to state 317 insert_atom go to state 318 atom go to state 319 parameter_ref go to state 84 literal go to state 86 parameter go to state 88
59 module_def → MODULE opt_module LANGUAGE lang AUTHORIZATION user . opt_cursor_def_list procedure_def_list 68 opt_cursor_def_list → . [PROCEDURE] 69 | . cursor_def_list 70 cursor_def_list → . cursor_def 71 | . cursor_def_list cursor_def 72 cursor_def → . DECLARE cursor CURSOR FOR query_exp opt_order_by_clause DECLARE shift, and go to state 320 $default reduce using rule 68 (opt_cursor_def_list) opt_cursor_def_list go to state 321 cursor_def_list go to state 322 cursor_def go to state 323
234 column_ref → NAME '.' NAME '.' . NAME NAME shift, and go to state 324
223 function_ref → AMMSC '(' '*' ')' . $default reduce using rule 223 (function_ref)
203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp 225 function_ref → AMMSC '(' ALL scalar_exp . ')' '+' shift, and go to state 128 '-' shift, and go to state 129 '*' shift, and go to state 130 '/' shift, and go to state 131 ')' shift, and go to state 325
224 function_ref → AMMSC '(' DISTINCT column_ref . ')' ')' shift, and go to state 326
226 function_ref → AMMSC '(' scalar_exp ')' . $default reduce using rule 226 (function_ref)
155 cross_join → table_ref . CROSS JOIN table_ref 156 qualified_join → table_ref . join_type JOIN table_ref join_spec 157 join_type → . [JOIN] 158 | . INNER CROSS shift, and go to state 265 INNER shift, and go to state 266 $default reduce using rule 157 (join_type) join_type go to state 267
151 table_ref → joined_table . [CROSS, INNER, JOIN] 154 joined_table → '(' joined_table . ')' ')' shift, and go to state 327 $default reduce using rule 151 (table_ref)
148 table_ref_commalist → table_ref_commalist ',' . table_ref 149 table_ref → . table 150 | . table range_variable 151 | . joined_table 152 joined_table → . cross_join 153 | . qualified_join 154 | . '(' joined_table ')' 155 cross_join → . table_ref CROSS JOIN table_ref 156 qualified_join → . table_ref join_type JOIN table_ref join_spec 230 table → . NAME 231 | . NAME '.' NAME NAME shift, and go to state 52 '(' shift, and go to state 190 table_ref go to state 328 joined_table go to state 193 cross_join go to state 194 qualified_join go to state 195 table go to state 196
155 cross_join → table_ref CROSS . JOIN table_ref JOIN shift, and go to state 329
158 join_type → INNER . $default reduce using rule 158 (join_type)
156 qualified_join → table_ref join_type . JOIN table_ref join_spec JOIN shift, and go to state 330
256 range_variable → NAME . $default reduce using rule 256 (range_variable)
150 table_ref → table range_variable . $default reduce using rule 150 (table_ref)
119 select_statement → SELECT opt_all_distinct selection INTO target_commalist table_exp . $default reduce using rule 119 (select_statement)
164 opt_group_by_clause → GROUP . BY column_ref_commalist BY shift, and go to state 331
145 table_exp → from_clause opt_where_clause opt_group_by_clause . opt_having_clause opt_order_by_clause 167 opt_having_clause → . [CLOSE, COMMIT, CREATE, DECLARE, DELETE, FETCH, GRANT, INSERT, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WITH, ';', '(', ')'] 168 | . HAVING search_condition HAVING shift, and go to state 332 $default reduce using rule 167 (opt_having_clause) opt_having_clause go to state 333
125 update_statement_positioned → UPDATE table SET assignment_commalist WHERE CURRENT . OF cursor OF shift, and go to state 334
128 assignment_commalist → assignment_commalist ',' assignment . $default reduce using rule 128 (assignment_commalist)
130 assignment → column '=' NULLX . $default reduce using rule 130 (assignment)
129 assignment → column '=' scalar_exp . [CLOSE, COMMIT, CREATE, DELETE, FETCH, INSERT, OPEN, PROCEDURE, ROLLBACK, SELECT, UPDATE, WHERE, ';', '(', ','] 203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp '+' shift, and go to state 128 '-' shift, and go to state 129 '*' shift, and go to state 130 '/' shift, and go to state 131 $default reduce using rule 129 (assignment)
36 view_def → CREATE VIEW table . opt_column_commalist AS query_spec opt_with_check_option 39 opt_column_commalist → . [AS] 40 | . '(' column_commalist ')' '(' shift, and go to state 109 $default reduce using rule 39 (opt_column_commalist) opt_column_commalist go to state 335
44 privileges → ALL PRIVILEGES . $default reduce using rule 44 (privileges)
53 operation → REFERENCES opt_column_commalist . $default reduce using rule 53 (operation)
52 operation → UPDATE opt_column_commalist . $default reduce using rule 52 (operation)
41 privilege_def → GRANT privileges ON . table TO grantee_commalist opt_with_grant_option 230 table → . NAME 231 | . NAME '.' NAME NAME shift, and go to state 52 table go to state 336
48 operation_commalist → operation_commalist ',' . operation 49 operation → . SELECT 50 | . INSERT 51 | . DELETE 52 | . UPDATE opt_column_commalist 53 | . REFERENCES opt_column_commalist DELETE shift, and go to state 213 INSERT shift, and go to state 214 REFERENCES shift, and go to state 215 SELECT shift, and go to state 216 UPDATE shift, and go to state 217 operation go to state 337
33 table_constraint_def → CHECK '(' search_condition . ')' 169 search_condition → search_condition . OR search_condition 170 | search_condition . AND search_condition OR shift, and go to state 244 AND shift, and go to state 245 ')' shift, and go to state 338
31 table_constraint_def → FOREIGN KEY '(' . column_commalist ')' REFERENCES table 32 | FOREIGN KEY '(' . column_commalist ')' REFERENCES table '(' column_commalist ')' 34 column_commalist → . column 35 | . column_commalist ',' column 251 column → . NAME NAME shift, and go to state 137 column_commalist go to state 339 column go to state 179
30 table_constraint_def → PRIMARY KEY '(' . column_commalist ')' 34 column_commalist → . column 35 | . column_commalist ',' column 251 column → . NAME NAME shift, and go to state 137 column_commalist go to state 340 column go to state 179
29 table_constraint_def → UNIQUE '(' column_commalist . ')' 35 column_commalist → column_commalist . ',' column ')' shift, and go to state 341 ',' shift, and go to state 254
14 base_table_element_commalist → base_table_element_commalist ',' base_table_element . $default reduce using rule 14 (base_table_element_commalist)
236 data_type → CHARACTER '(' . INTNUM ')' INTNUM shift, and go to state 342
243 data_type → DECIMAL '(' . INTNUM ')' 244 | DECIMAL '(' . INTNUM ',' INTNUM ')' INTNUM shift, and go to state 343
250 data_type → DOUBLE PRECISION . $default reduce using rule 250 (data_type)
248 data_type → FLOAT '(' . INTNUM ')' INTNUM shift, and go to state 344
240 data_type → NUMERIC '(' . INTNUM ')' 241 | NUMERIC '(' . INTNUM ',' INTNUM ')' INTNUM shift, and go to state 345
238 data_type → VARCHAR '(' . INTNUM ')' INTNUM shift, and go to state 346
17 column_def → column data_type column_def_opt_list . [')', ','] 19 column_def_opt_list → column_def_opt_list . column_def_opt 20 column_def_opt → . NOT NULLX 21 | . NOT NULLX UNIQUE 22 | . NOT NULLX PRIMARY KEY 23 | . DEFAULT literal 24 | . DEFAULT NULLX 25 | . DEFAULT USER 26 | . CHECK '(' search_condition ')' 27 | . REFERENCES table 28 | . REFERENCES table '(' column_commalist ')' NOT shift, and go to state 347 CHECK shift, and go to state 348 DEFAULT shift, and go to state 349 REFERENCES shift, and go to state 350 $default reduce using rule 17 (column_def) column_def_opt go to state 351
107 delete_statement_positioned → DELETE FROM table WHERE CURRENT OF cursor . $default reduce using rule 107 (delete_statement_positioned)
122 opt_all_distinct → . [NAME, STRING, INTNUM, APPROXNUM, AMMSC, '+', '-', '*', USER, '(', ':'] 123 | . ALL 124 | . DISTINCT 202 subquery → '(' SELECT . opt_all_distinct selection table_exp ')' ALL shift, and go to state 49 DISTINCT shift, and go to state 50 $default reduce using rule 122 (opt_all_distinct) opt_all_distinct go to state 352
172 search_condition → '(' search_condition ')' . $default reduce using rule 172 (search_condition)
169 search_condition → search_condition . OR search_condition 169 | search_condition OR search_condition . [OR, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INNER, INSERT, JOIN, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 170 | search_condition . AND search_condition AND shift, and go to state 245 $default reduce using rule 169 (search_condition) Conflict between rule 169 and token OR resolved as reduce (%left OR). Conflict between rule 169 and token AND resolved as shift (OR < AND).
169 search_condition → search_condition . OR search_condition 170 | search_condition . AND search_condition 170 | search_condition AND search_condition . [OR, AND, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INNER, INSERT, JOIN, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] $default reduce using rule 170 (search_condition) Conflict between rule 170 and token OR resolved as reduce (OR < AND). Conflict between rule 170 and token AND resolved as reduce (%left AND).
183 between_predicate → scalar_exp NOT BETWEEN . scalar_exp AND scalar_exp 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 353 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
191 in_predicate → scalar_exp NOT IN . '(' subquery ')' 193 | scalar_exp NOT IN . '(' atom_commalist ')' '(' shift, and go to state 354
185 like_predicate → scalar_exp NOT LIKE . atom opt_escape 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 254 parameter → . ':' NAME STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 USER shift, and go to state 76 ':' shift, and go to state 78 atom go to state 355 parameter_ref go to state 84 literal go to state 86 parameter go to state 88
199 any_all_some → ALL . $default reduce using rule 199 (any_all_some)
198 any_all_some → ANY . $default reduce using rule 198 (any_all_some)
200 any_all_some → SOME . $default reduce using rule 200 (any_all_some)
202 subquery → '(' . SELECT opt_all_distinct selection table_exp ')' 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 212 | '(' . scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 SELECT shift, and go to state 296 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 122 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
197 all_or_any_predicate → scalar_exp COMPARISON any_all_some . subquery 202 subquery → . '(' SELECT opt_all_distinct selection table_exp ')' '(' shift, and go to state 240 subquery go to state 356
182 comparison_predicate → scalar_exp COMPARISON subquery . $default reduce using rule 182 (comparison_predicate)
181 comparison_predicate → scalar_exp COMPARISON scalar_exp . [OR, AND, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INNER, INSERT, JOIN, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp '+' shift, and go to state 128 '-' shift, and go to state 129 '*' shift, and go to state 130 '/' shift, and go to state 131 $default reduce using rule 181 (comparison_predicate)
184 between_predicate → scalar_exp BETWEEN scalar_exp . AND scalar_exp 203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp AND shift, and go to state 357 '+' shift, and go to state 128 '-' shift, and go to state 129 '*' shift, and go to state 130 '/' shift, and go to state 131
192 in_predicate → scalar_exp IN '(' . subquery ')' 194 | scalar_exp IN '(' . atom_commalist ')' 195 atom_commalist → . atom 196 | . atom_commalist ',' atom 202 subquery → . '(' SELECT opt_all_distinct selection table_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 254 parameter → . ':' NAME STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 USER shift, and go to state 76 '(' shift, and go to state 240 ':' shift, and go to state 78 atom_commalist go to state 358 subquery go to state 359 atom go to state 360 parameter_ref go to state 84 literal go to state 86 parameter go to state 88
186 like_predicate → scalar_exp LIKE atom . opt_escape 187 opt_escape → . [OR, AND, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INNER, INSERT, JOIN, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 188 | . ESCAPE atom ESCAPE shift, and go to state 361 $default reduce using rule 187 (opt_escape) opt_escape go to state 362
189 test_for_null → column_ref IS NOT . NULLX NULLX shift, and go to state 363
190 test_for_null → column_ref IS NULLX . $default reduce using rule 190 (test_for_null)
35 column_commalist → column_commalist ',' column . $default reduce using rule 35 (column_commalist)
116 insert_atom → NULLX . $default reduce using rule 116 (insert_atom)
111 values_or_query_spec → VALUES '(' insert_atom_commalist . ')' 114 insert_atom_commalist → insert_atom_commalist . ',' insert_atom ')' shift, and go to state 364 ',' shift, and go to state 365
113 insert_atom_commalist → insert_atom . $default reduce using rule 113 (insert_atom_commalist)
115 insert_atom → atom . $default reduce using rule 115 (insert_atom)
72 cursor_def → DECLARE . cursor CURSOR FOR query_exp opt_order_by_clause 252 cursor → . NAME NAME shift, and go to state 36 cursor go to state 366
59 module_def → MODULE opt_module LANGUAGE lang AUTHORIZATION user opt_cursor_def_list . procedure_def_list 82 procedure_def_list → . procedure_def 83 | . procedure_def_list procedure_def 84 procedure_def → . PROCEDURE procedure parameter_def_list ';' manipulative_statement_list PROCEDURE shift, and go to state 367 procedure_def_list go to state 368 procedure_def go to state 369
69 opt_cursor_def_list → cursor_def_list . [PROCEDURE] 71 cursor_def_list → cursor_def_list . cursor_def 72 cursor_def → . DECLARE cursor CURSOR FOR query_exp opt_order_by_clause DECLARE shift, and go to state 320 $default reduce using rule 69 (opt_cursor_def_list) cursor_def go to state 370
70 cursor_def_list → cursor_def . $default reduce using rule 70 (cursor_def_list)
234 column_ref → NAME '.' NAME '.' NAME . $default reduce using rule 234 (column_ref)
225 function_ref → AMMSC '(' ALL scalar_exp ')' . $default reduce using rule 225 (function_ref)
224 function_ref → AMMSC '(' DISTINCT column_ref ')' . $default reduce using rule 224 (function_ref)
154 joined_table → '(' joined_table ')' . $default reduce using rule 154 (joined_table)
148 table_ref_commalist → table_ref_commalist ',' table_ref . [CLOSE, COMMIT, CREATE, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INSERT, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 155 cross_join → table_ref . CROSS JOIN table_ref 156 qualified_join → table_ref . join_type JOIN table_ref join_spec 157 join_type → . [JOIN] 158 | . INNER CROSS shift, and go to state 265 INNER shift, and go to state 266 JOIN reduce using rule 157 (join_type) $default reduce using rule 148 (table_ref_commalist) join_type go to state 267
149 table_ref → . table 150 | . table range_variable 151 | . joined_table 152 joined_table → . cross_join 153 | . qualified_join 154 | . '(' joined_table ')' 155 cross_join → . table_ref CROSS JOIN table_ref 155 | table_ref CROSS JOIN . table_ref 156 qualified_join → . table_ref join_type JOIN table_ref join_spec 230 table → . NAME 231 | . NAME '.' NAME NAME shift, and go to state 52 '(' shift, and go to state 190 table_ref go to state 371 joined_table go to state 193 cross_join go to state 194 qualified_join go to state 195 table go to state 196
149 table_ref → . table 150 | . table range_variable 151 | . joined_table 152 joined_table → . cross_join 153 | . qualified_join 154 | . '(' joined_table ')' 155 cross_join → . table_ref CROSS JOIN table_ref 156 qualified_join → . table_ref join_type JOIN table_ref join_spec 156 | table_ref join_type JOIN . table_ref join_spec 230 table → . NAME 231 | . NAME '.' NAME NAME shift, and go to state 52 '(' shift, and go to state 190 table_ref go to state 372 joined_table go to state 193 cross_join go to state 194 qualified_join go to state 195 table go to state 196
164 opt_group_by_clause → GROUP BY . column_ref_commalist 165 column_ref_commalist → . column_ref 166 | . column_ref_commalist ',' column_ref 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME NAME shift, and go to state 68 column_ref_commalist go to state 373 column_ref go to state 374
168 opt_having_clause → HAVING . search_condition 169 search_condition → . search_condition OR search_condition 170 | . search_condition AND search_condition 171 | . NOT search_condition 172 | . '(' search_condition ')' 173 | . predicate 174 predicate → . comparison_predicate 175 | . between_predicate 176 | . like_predicate 177 | . test_for_null 178 | . in_predicate 179 | . all_or_any_predicate 180 | . existence_test 181 comparison_predicate → . scalar_exp COMPARISON scalar_exp 182 | . scalar_exp COMPARISON subquery 183 between_predicate → . scalar_exp NOT BETWEEN scalar_exp AND scalar_exp 184 | . scalar_exp BETWEEN scalar_exp AND scalar_exp 185 like_predicate → . scalar_exp NOT LIKE atom opt_escape 186 | . scalar_exp LIKE atom opt_escape 189 test_for_null → . column_ref IS NOT NULLX 190 | . column_ref IS NULLX 191 in_predicate → . scalar_exp NOT IN '(' subquery ')' 192 | . scalar_exp IN '(' subquery ')' 193 | . scalar_exp NOT IN '(' atom_commalist ')' 194 | . scalar_exp IN '(' atom_commalist ')' 197 all_or_any_predicate → . scalar_exp COMPARISON any_all_some subquery 201 existence_test → . EXISTS subquery 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 NOT shift, and go to state 162 '+' shift, and go to state 73 '-' shift, and go to state 74 EXISTS shift, and go to state 164 USER shift, and go to state 76 '(' shift, and go to state 165 ':' shift, and go to state 78 search_condition go to state 375 predicate go to state 167 comparison_predicate go to state 168 between_predicate go to state 169 like_predicate go to state 170 test_for_null go to state 171 in_predicate go to state 172 all_or_any_predicate go to state 173 existence_test go to state 174 scalar_exp go to state 175 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 176 parameter go to state 88
73 opt_order_by_clause → . [CLOSE, COMMIT, CREATE, DECLARE, DELETE, FETCH, GRANT, INSERT, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WITH, ';', '(', ')'] 74 | . ORDER BY ordering_spec_commalist 145 table_exp → from_clause opt_where_clause opt_group_by_clause opt_having_clause . opt_order_by_clause ORDER shift, and go to state 376 ORDER [reduce using rule 73 (opt_order_by_clause)] $default reduce using rule 73 (opt_order_by_clause) opt_order_by_clause go to state 377
125 update_statement_positioned → UPDATE table SET assignment_commalist WHERE CURRENT OF . cursor 252 cursor → . NAME NAME shift, and go to state 36 cursor go to state 378
36 view_def → CREATE VIEW table opt_column_commalist . AS query_spec opt_with_check_option AS shift, and go to state 379
41 privilege_def → GRANT privileges ON table . TO grantee_commalist opt_with_grant_option TO shift, and go to state 380
48 operation_commalist → operation_commalist ',' operation . $default reduce using rule 48 (operation_commalist)
33 table_constraint_def → CHECK '(' search_condition ')' . $default reduce using rule 33 (table_constraint_def)
31 table_constraint_def → FOREIGN KEY '(' column_commalist . ')' REFERENCES table 32 | FOREIGN KEY '(' column_commalist . ')' REFERENCES table '(' column_commalist ')' 35 column_commalist → column_commalist . ',' column ')' shift, and go to state 381 ',' shift, and go to state 254
30 table_constraint_def → PRIMARY KEY '(' column_commalist . ')' 35 column_commalist → column_commalist . ',' column ')' shift, and go to state 382 ',' shift, and go to state 254
29 table_constraint_def → UNIQUE '(' column_commalist ')' . $default reduce using rule 29 (table_constraint_def)
236 data_type → CHARACTER '(' INTNUM . ')' ')' shift, and go to state 383
243 data_type → DECIMAL '(' INTNUM . ')' 244 | DECIMAL '(' INTNUM . ',' INTNUM ')' ')' shift, and go to state 384 ',' shift, and go to state 385
248 data_type → FLOAT '(' INTNUM . ')' ')' shift, and go to state 386
240 data_type → NUMERIC '(' INTNUM . ')' 241 | NUMERIC '(' INTNUM . ',' INTNUM ')' ')' shift, and go to state 387 ',' shift, and go to state 388
238 data_type → VARCHAR '(' INTNUM . ')' ')' shift, and go to state 389
20 column_def_opt → NOT . NULLX 21 | NOT . NULLX UNIQUE 22 | NOT . NULLX PRIMARY KEY NULLX shift, and go to state 390
26 column_def_opt → CHECK . '(' search_condition ')' '(' shift, and go to state 391
23 column_def_opt → DEFAULT . literal 24 | DEFAULT . NULLX 25 | DEFAULT . USER 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 NULLX shift, and go to state 392 USER shift, and go to state 393 literal go to state 394
27 column_def_opt → REFERENCES . table 28 | REFERENCES . table '(' column_commalist ')' 230 table → . NAME 231 | . NAME '.' NAME NAME shift, and go to state 52 table go to state 395
19 column_def_opt_list → column_def_opt_list column_def_opt . $default reduce using rule 19 (column_def_opt_list)
143 selection → . scalar_exp_commalist 144 | . '*' 202 subquery → '(' SELECT opt_all_distinct . selection table_exp ')' 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 213 derived_column → . scalar_exp 214 | . scalar_exp AS column_ref 215 scalar_exp_commalist → . derived_column 216 | . scalar_exp_commalist ',' derived_column 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 '*' shift, and go to state 75 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 selection go to state 396 scalar_exp go to state 80 derived_column go to state 81 scalar_exp_commalist go to state 82 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
183 between_predicate → scalar_exp NOT BETWEEN scalar_exp . AND scalar_exp 203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp AND shift, and go to state 397 '+' shift, and go to state 128 '-' shift, and go to state 129 '*' shift, and go to state 130 '/' shift, and go to state 131
191 in_predicate → scalar_exp NOT IN '(' . subquery ')' 193 | scalar_exp NOT IN '(' . atom_commalist ')' 195 atom_commalist → . atom 196 | . atom_commalist ',' atom 202 subquery → . '(' SELECT opt_all_distinct selection table_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 254 parameter → . ':' NAME STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 USER shift, and go to state 76 '(' shift, and go to state 240 ':' shift, and go to state 78 atom_commalist go to state 398 subquery go to state 399 atom go to state 360 parameter_ref go to state 84 literal go to state 86 parameter go to state 88
185 like_predicate → scalar_exp NOT LIKE atom . opt_escape 187 opt_escape → . [OR, AND, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INNER, INSERT, JOIN, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 188 | . ESCAPE atom ESCAPE shift, and go to state 361 $default reduce using rule 187 (opt_escape) opt_escape go to state 400
197 all_or_any_predicate → scalar_exp COMPARISON any_all_some subquery . $default reduce using rule 197 (all_or_any_predicate)
184 between_predicate → scalar_exp BETWEEN scalar_exp AND . scalar_exp 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 401 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
194 in_predicate → scalar_exp IN '(' atom_commalist . ')' 196 atom_commalist → atom_commalist . ',' atom ')' shift, and go to state 402 ',' shift, and go to state 403
192 in_predicate → scalar_exp IN '(' subquery . ')' ')' shift, and go to state 404
195 atom_commalist → atom . $default reduce using rule 195 (atom_commalist)
188 opt_escape → ESCAPE . atom 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 254 parameter → . ':' NAME STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 USER shift, and go to state 76 ':' shift, and go to state 78 atom go to state 405 parameter_ref go to state 84 literal go to state 86 parameter go to state 88
186 like_predicate → scalar_exp LIKE atom opt_escape . $default reduce using rule 186 (like_predicate)
189 test_for_null → column_ref IS NOT NULLX . $default reduce using rule 189 (test_for_null)
111 values_or_query_spec → VALUES '(' insert_atom_commalist ')' . $default reduce using rule 111 (values_or_query_spec)
114 insert_atom_commalist → insert_atom_commalist ',' . insert_atom 115 insert_atom → . atom 116 | . NULLX 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 254 parameter → . ':' NAME STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 NULLX shift, and go to state 316 USER shift, and go to state 76 ':' shift, and go to state 78 insert_atom go to state 406 atom go to state 319 parameter_ref go to state 84 literal go to state 86 parameter go to state 88
72 cursor_def → DECLARE cursor . CURSOR FOR query_exp opt_order_by_clause CURSOR shift, and go to state 407
84 procedure_def → PROCEDURE . procedure parameter_def_list ';' manipulative_statement_list 255 procedure → . NAME NAME shift, and go to state 408 procedure go to state 409
59 module_def → MODULE opt_module LANGUAGE lang AUTHORIZATION user opt_cursor_def_list procedure_def_list . [';'] 83 procedure_def_list → procedure_def_list . procedure_def 84 procedure_def → . PROCEDURE procedure parameter_def_list ';' manipulative_statement_list PROCEDURE shift, and go to state 367 $default reduce using rule 59 (module_def) procedure_def go to state 410
82 procedure_def_list → procedure_def . $default reduce using rule 82 (procedure_def_list)
71 cursor_def_list → cursor_def_list cursor_def . $default reduce using rule 71 (cursor_def_list)
155 cross_join → table_ref . CROSS JOIN table_ref 155 | table_ref CROSS JOIN table_ref . [CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INNER, INSERT, JOIN, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 156 qualified_join → table_ref . join_type JOIN table_ref join_spec 157 join_type → . [JOIN] 158 | . INNER CROSS shift, and go to state 265 INNER shift, and go to state 266 CROSS [reduce using rule 155 (cross_join)] INNER [reduce using rule 155 (cross_join)] JOIN reduce using rule 155 (cross_join) JOIN [reduce using rule 157 (join_type)] $default reduce using rule 155 (cross_join) join_type go to state 267
155 cross_join → table_ref . CROSS JOIN table_ref 156 qualified_join → table_ref . join_type JOIN table_ref join_spec 156 | table_ref join_type JOIN table_ref . join_spec 157 join_type → . [JOIN] 158 | . INNER 159 join_spec → . [CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INNER, INSERT, JOIN, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 160 | . join_condition 161 join_condition → . ON search_condition CROSS shift, and go to state 265 INNER shift, and go to state 266 ON shift, and go to state 411 CROSS [reduce using rule 159 (join_spec)] INNER [reduce using rule 159 (join_spec)] JOIN reduce using rule 157 (join_type) JOIN [reduce using rule 159 (join_spec)] ON [reduce using rule 159 (join_spec)] $default reduce using rule 159 (join_spec) join_type go to state 267 join_spec go to state 412 join_condition go to state 413
164 opt_group_by_clause → GROUP BY column_ref_commalist . [CLOSE, COMMIT, CREATE, DECLARE, DELETE, FETCH, GRANT, HAVING, INSERT, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WITH, ';', '(', ')'] 166 column_ref_commalist → column_ref_commalist . ',' column_ref ',' shift, and go to state 414 $default reduce using rule 164 (opt_group_by_clause)
165 column_ref_commalist → column_ref . $default reduce using rule 165 (column_ref_commalist)
168 opt_having_clause → HAVING search_condition . [CLOSE, COMMIT, CREATE, DECLARE, DELETE, FETCH, GRANT, INSERT, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WITH, ';', '(', ')'] 169 search_condition → search_condition . OR search_condition 170 | search_condition . AND search_condition OR shift, and go to state 244 AND shift, and go to state 245 $default reduce using rule 168 (opt_having_clause)
74 opt_order_by_clause → ORDER . BY ordering_spec_commalist BY shift, and go to state 415
145 table_exp → from_clause opt_where_clause opt_group_by_clause opt_having_clause opt_order_by_clause . $default reduce using rule 145 (table_exp)
125 update_statement_positioned → UPDATE table SET assignment_commalist WHERE CURRENT OF cursor . $default reduce using rule 125 (update_statement_positioned)
36 view_def → CREATE VIEW table opt_column_commalist AS . query_spec opt_with_check_option 142 query_spec → . SELECT opt_all_distinct selection table_exp SELECT shift, and go to state 56 query_spec go to state 416
41 privilege_def → GRANT privileges ON table TO . grantee_commalist opt_with_grant_option 54 grantee_commalist → . grantee 55 | . grantee_commalist ',' grantee 56 grantee → . PUBLIC 57 | . user 257 user → . NAME NAME shift, and go to state 100 PUBLIC shift, and go to state 417 grantee_commalist go to state 418 grantee go to state 419 user go to state 420
31 table_constraint_def → FOREIGN KEY '(' column_commalist ')' . REFERENCES table 32 | FOREIGN KEY '(' column_commalist ')' . REFERENCES table '(' column_commalist ')' REFERENCES shift, and go to state 421
30 table_constraint_def → PRIMARY KEY '(' column_commalist ')' . $default reduce using rule 30 (table_constraint_def)
236 data_type → CHARACTER '(' INTNUM ')' . $default reduce using rule 236 (data_type)
243 data_type → DECIMAL '(' INTNUM ')' . $default reduce using rule 243 (data_type)
244 data_type → DECIMAL '(' INTNUM ',' . INTNUM ')' INTNUM shift, and go to state 422
248 data_type → FLOAT '(' INTNUM ')' . $default reduce using rule 248 (data_type)
240 data_type → NUMERIC '(' INTNUM ')' . $default reduce using rule 240 (data_type)
241 data_type → NUMERIC '(' INTNUM ',' . INTNUM ')' INTNUM shift, and go to state 423
238 data_type → VARCHAR '(' INTNUM ')' . $default reduce using rule 238 (data_type)
20 column_def_opt → NOT NULLX . [NOT, CHECK, DEFAULT, REFERENCES, ')', ','] 21 | NOT NULLX . UNIQUE 22 | NOT NULLX . PRIMARY KEY PRIMARY shift, and go to state 424 UNIQUE shift, and go to state 425 $default reduce using rule 20 (column_def_opt)
26 column_def_opt → CHECK '(' . search_condition ')' 169 search_condition → . search_condition OR search_condition 170 | . search_condition AND search_condition 171 | . NOT search_condition 172 | . '(' search_condition ')' 173 | . predicate 174 predicate → . comparison_predicate 175 | . between_predicate 176 | . like_predicate 177 | . test_for_null 178 | . in_predicate 179 | . all_or_any_predicate 180 | . existence_test 181 comparison_predicate → . scalar_exp COMPARISON scalar_exp 182 | . scalar_exp COMPARISON subquery 183 between_predicate → . scalar_exp NOT BETWEEN scalar_exp AND scalar_exp 184 | . scalar_exp BETWEEN scalar_exp AND scalar_exp 185 like_predicate → . scalar_exp NOT LIKE atom opt_escape 186 | . scalar_exp LIKE atom opt_escape 189 test_for_null → . column_ref IS NOT NULLX 190 | . column_ref IS NULLX 191 in_predicate → . scalar_exp NOT IN '(' subquery ')' 192 | . scalar_exp IN '(' subquery ')' 193 | . scalar_exp NOT IN '(' atom_commalist ')' 194 | . scalar_exp IN '(' atom_commalist ')' 197 all_or_any_predicate → . scalar_exp COMPARISON any_all_some subquery 201 existence_test → . EXISTS subquery 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 NOT shift, and go to state 162 '+' shift, and go to state 73 '-' shift, and go to state 74 EXISTS shift, and go to state 164 USER shift, and go to state 76 '(' shift, and go to state 165 ':' shift, and go to state 78 search_condition go to state 426 predicate go to state 167 comparison_predicate go to state 168 between_predicate go to state 169 like_predicate go to state 170 test_for_null go to state 171 in_predicate go to state 172 all_or_any_predicate go to state 173 existence_test go to state 174 scalar_exp go to state 175 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 176 parameter go to state 88
24 column_def_opt → DEFAULT NULLX . $default reduce using rule 24 (column_def_opt)
25 column_def_opt → DEFAULT USER . $default reduce using rule 25 (column_def_opt)
23 column_def_opt → DEFAULT literal . $default reduce using rule 23 (column_def_opt)
27 column_def_opt → REFERENCES table . [NOT, CHECK, DEFAULT, REFERENCES, ')', ','] 28 | REFERENCES table . '(' column_commalist ')' '(' shift, and go to state 427 $default reduce using rule 27 (column_def_opt)
145 table_exp → . from_clause opt_where_clause opt_group_by_clause opt_having_clause opt_order_by_clause 146 from_clause → . FROM table_ref_commalist 202 subquery → '(' SELECT opt_all_distinct selection . table_exp ')' FROM shift, and go to state 124 table_exp go to state 428 from_clause go to state 127
183 between_predicate → scalar_exp NOT BETWEEN scalar_exp AND . scalar_exp 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 '+' shift, and go to state 73 '-' shift, and go to state 74 USER shift, and go to state 76 '(' shift, and go to state 77 ':' shift, and go to state 78 scalar_exp go to state 429 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 87 parameter go to state 88
193 in_predicate → scalar_exp NOT IN '(' atom_commalist . ')' 196 atom_commalist → atom_commalist . ',' atom ')' shift, and go to state 430 ',' shift, and go to state 403
191 in_predicate → scalar_exp NOT IN '(' subquery . ')' ')' shift, and go to state 431
185 like_predicate → scalar_exp NOT LIKE atom opt_escape . $default reduce using rule 185 (like_predicate)
184 between_predicate → scalar_exp BETWEEN scalar_exp AND scalar_exp . [OR, AND, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INNER, INSERT, JOIN, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp '+' shift, and go to state 128 '-' shift, and go to state 129 '*' shift, and go to state 130 '/' shift, and go to state 131 $default reduce using rule 184 (between_predicate)
194 in_predicate → scalar_exp IN '(' atom_commalist ')' . $default reduce using rule 194 (in_predicate)
196 atom_commalist → atom_commalist ',' . atom 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 254 parameter → . ':' NAME STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 USER shift, and go to state 76 ':' shift, and go to state 78 atom go to state 432 parameter_ref go to state 84 literal go to state 86 parameter go to state 88
192 in_predicate → scalar_exp IN '(' subquery ')' . $default reduce using rule 192 (in_predicate)
188 opt_escape → ESCAPE atom . $default reduce using rule 188 (opt_escape)
114 insert_atom_commalist → insert_atom_commalist ',' insert_atom . $default reduce using rule 114 (insert_atom_commalist)
72 cursor_def → DECLARE cursor CURSOR . FOR query_exp opt_order_by_clause FOR shift, and go to state 433
255 procedure → NAME . $default reduce using rule 255 (procedure)
84 procedure_def → PROCEDURE procedure . parameter_def_list ';' manipulative_statement_list 87 parameter_def_list → . parameter_def 88 | . parameter_def_list parameter_def 89 parameter_def → . parameter data_type 90 | . SQLCODE 254 parameter → . ':' NAME SQLCODE shift, and go to state 434 ':' shift, and go to state 78 parameter_def_list go to state 435 parameter_def go to state 436 parameter go to state 437
83 procedure_def_list → procedure_def_list procedure_def . $default reduce using rule 83 (procedure_def_list)
161 join_condition → ON . search_condition 169 search_condition → . search_condition OR search_condition 170 | . search_condition AND search_condition 171 | . NOT search_condition 172 | . '(' search_condition ')' 173 | . predicate 174 predicate → . comparison_predicate 175 | . between_predicate 176 | . like_predicate 177 | . test_for_null 178 | . in_predicate 179 | . all_or_any_predicate 180 | . existence_test 181 comparison_predicate → . scalar_exp COMPARISON scalar_exp 182 | . scalar_exp COMPARISON subquery 183 between_predicate → . scalar_exp NOT BETWEEN scalar_exp AND scalar_exp 184 | . scalar_exp BETWEEN scalar_exp AND scalar_exp 185 like_predicate → . scalar_exp NOT LIKE atom opt_escape 186 | . scalar_exp LIKE atom opt_escape 189 test_for_null → . column_ref IS NOT NULLX 190 | . column_ref IS NULLX 191 in_predicate → . scalar_exp NOT IN '(' subquery ')' 192 | . scalar_exp IN '(' subquery ')' 193 | . scalar_exp NOT IN '(' atom_commalist ')' 194 | . scalar_exp IN '(' atom_commalist ')' 197 all_or_any_predicate → . scalar_exp COMPARISON any_all_some subquery 201 existence_test → . EXISTS subquery 203 scalar_exp → . scalar_exp '+' scalar_exp 204 | . scalar_exp '-' scalar_exp 205 | . scalar_exp '*' scalar_exp 206 | . scalar_exp '/' scalar_exp 207 | . '+' scalar_exp 208 | . '-' scalar_exp 209 | . atom 210 | . column_ref 211 | . function_ref 212 | . '(' scalar_exp ')' 217 atom → . parameter_ref 218 | . literal 219 | . USER 220 parameter_ref → . parameter 221 | . parameter parameter 222 | . parameter INDICATOR parameter 223 function_ref → . AMMSC '(' '*' ')' 224 | . AMMSC '(' DISTINCT column_ref ')' 225 | . AMMSC '(' ALL scalar_exp ')' 226 | . AMMSC '(' scalar_exp ')' 227 literal → . STRING 228 | . INTNUM 229 | . APPROXNUM 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME 254 parameter → . ':' NAME NAME shift, and go to state 68 STRING shift, and go to state 69 INTNUM shift, and go to state 70 APPROXNUM shift, and go to state 71 AMMSC shift, and go to state 72 NOT shift, and go to state 162 '+' shift, and go to state 73 '-' shift, and go to state 74 EXISTS shift, and go to state 164 USER shift, and go to state 76 '(' shift, and go to state 165 ':' shift, and go to state 78 search_condition go to state 438 predicate go to state 167 comparison_predicate go to state 168 between_predicate go to state 169 like_predicate go to state 170 test_for_null go to state 171 in_predicate go to state 172 all_or_any_predicate go to state 173 existence_test go to state 174 scalar_exp go to state 175 atom go to state 83 parameter_ref go to state 84 function_ref go to state 85 literal go to state 86 column_ref go to state 176 parameter go to state 88
156 qualified_join → table_ref join_type JOIN table_ref join_spec . $default reduce using rule 156 (qualified_join)
160 join_spec → join_condition . $default reduce using rule 160 (join_spec)
166 column_ref_commalist → column_ref_commalist ',' . column_ref 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME NAME shift, and go to state 68 column_ref go to state 439
74 opt_order_by_clause → ORDER BY . ordering_spec_commalist 75 ordering_spec_commalist → . ordering_spec 76 | . ordering_spec_commalist ',' ordering_spec 77 ordering_spec → . INTNUM opt_asc_desc 78 | . column_ref opt_asc_desc 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME NAME shift, and go to state 68 INTNUM shift, and go to state 440 ordering_spec_commalist go to state 441 ordering_spec go to state 442 column_ref go to state 443
36 view_def → CREATE VIEW table opt_column_commalist AS query_spec . opt_with_check_option 37 opt_with_check_option → . [CREATE, GRANT, ';'] 38 | . WITH CHECK OPTION WITH shift, and go to state 444 $default reduce using rule 37 (opt_with_check_option) opt_with_check_option go to state 445
56 grantee → PUBLIC . $default reduce using rule 56 (grantee)
41 privilege_def → GRANT privileges ON table TO grantee_commalist . opt_with_grant_option 42 opt_with_grant_option → . [CREATE, GRANT, ';'] 43 | . WITH GRANT OPTION 55 grantee_commalist → grantee_commalist . ',' grantee WITH shift, and go to state 446 ',' shift, and go to state 447 $default reduce using rule 42 (opt_with_grant_option) opt_with_grant_option go to state 448
54 grantee_commalist → grantee . $default reduce using rule 54 (grantee_commalist)
57 grantee → user . $default reduce using rule 57 (grantee)
31 table_constraint_def → FOREIGN KEY '(' column_commalist ')' REFERENCES . table 32 | FOREIGN KEY '(' column_commalist ')' REFERENCES . table '(' column_commalist ')' 230 table → . NAME 231 | . NAME '.' NAME NAME shift, and go to state 52 table go to state 449
244 data_type → DECIMAL '(' INTNUM ',' INTNUM . ')' ')' shift, and go to state 450
241 data_type → NUMERIC '(' INTNUM ',' INTNUM . ')' ')' shift, and go to state 451
22 column_def_opt → NOT NULLX PRIMARY . KEY KEY shift, and go to state 452
21 column_def_opt → NOT NULLX UNIQUE . $default reduce using rule 21 (column_def_opt)
26 column_def_opt → CHECK '(' search_condition . ')' 169 search_condition → search_condition . OR search_condition 170 | search_condition . AND search_condition OR shift, and go to state 244 AND shift, and go to state 245 ')' shift, and go to state 453
28 column_def_opt → REFERENCES table '(' . column_commalist ')' 34 column_commalist → . column 35 | . column_commalist ',' column 251 column → . NAME NAME shift, and go to state 137 column_commalist go to state 454 column go to state 179
202 subquery → '(' SELECT opt_all_distinct selection table_exp . ')' ')' shift, and go to state 455
183 between_predicate → scalar_exp NOT BETWEEN scalar_exp AND scalar_exp . [OR, AND, CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INNER, INSERT, JOIN, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 203 scalar_exp → scalar_exp . '+' scalar_exp 204 | scalar_exp . '-' scalar_exp 205 | scalar_exp . '*' scalar_exp 206 | scalar_exp . '/' scalar_exp '+' shift, and go to state 128 '-' shift, and go to state 129 '*' shift, and go to state 130 '/' shift, and go to state 131 $default reduce using rule 183 (between_predicate)
193 in_predicate → scalar_exp NOT IN '(' atom_commalist ')' . $default reduce using rule 193 (in_predicate)
191 in_predicate → scalar_exp NOT IN '(' subquery ')' . $default reduce using rule 191 (in_predicate)
196 atom_commalist → atom_commalist ',' atom . $default reduce using rule 196 (atom_commalist)
72 cursor_def → DECLARE cursor CURSOR FOR . query_exp opt_order_by_clause 137 query_exp → . query_term 138 | . query_exp UNION query_term 139 | . query_exp UNION ALL query_term 140 query_term → . query_spec 141 | . '(' query_exp ')' 142 query_spec → . SELECT opt_all_distinct selection table_exp SELECT shift, and go to state 56 '(' shift, and go to state 13 query_exp go to state 456 query_term go to state 34 query_spec go to state 35
90 parameter_def → SQLCODE . $default reduce using rule 90 (parameter_def)
84 procedure_def → PROCEDURE procedure parameter_def_list . ';' manipulative_statement_list 88 parameter_def_list → parameter_def_list . parameter_def 89 parameter_def → . parameter data_type 90 | . SQLCODE 254 parameter → . ':' NAME SQLCODE shift, and go to state 434 ';' shift, and go to state 457 ':' shift, and go to state 78 parameter_def go to state 458 parameter go to state 437
87 parameter_def_list → parameter_def . $default reduce using rule 87 (parameter_def_list)
89 parameter_def → parameter . data_type 235 data_type → . CHARACTER 236 | . CHARACTER '(' INTNUM ')' 237 | . VARCHAR 238 | . VARCHAR '(' INTNUM ')' 239 | . NUMERIC 240 | . NUMERIC '(' INTNUM ')' 241 | . NUMERIC '(' INTNUM ',' INTNUM ')' 242 | . DECIMAL 243 | . DECIMAL '(' INTNUM ')' 244 | . DECIMAL '(' INTNUM ',' INTNUM ')' 245 | . INTEGER 246 | . SMALLINT 247 | . FLOAT 248 | . FLOAT '(' INTNUM ')' 249 | . REAL 250 | . DOUBLE PRECISION CHARACTER shift, and go to state 228 DECIMAL shift, and go to state 229 DOUBLE shift, and go to state 230 FLOAT shift, and go to state 231 INTEGER shift, and go to state 232 NUMERIC shift, and go to state 233 REAL shift, and go to state 234 SMALLINT shift, and go to state 235 VARCHAR shift, and go to state 236 data_type go to state 459
161 join_condition → ON search_condition . [CLOSE, COMMIT, CREATE, CROSS, DECLARE, DELETE, FETCH, GRANT, GROUP, HAVING, INNER, INSERT, JOIN, ON, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WHERE, WITH, ';', '(', ')', ','] 169 search_condition → search_condition . OR search_condition 170 | search_condition . AND search_condition OR shift, and go to state 244 AND shift, and go to state 245 $default reduce using rule 161 (join_condition)
166 column_ref_commalist → column_ref_commalist ',' column_ref . $default reduce using rule 166 (column_ref_commalist)
77 ordering_spec → INTNUM . opt_asc_desc 79 opt_asc_desc → . [CLOSE, COMMIT, CREATE, DECLARE, DELETE, FETCH, GRANT, INSERT, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WITH, ';', '(', ')', ','] 80 | . ASC 81 | . DESC ASC shift, and go to state 460 DESC shift, and go to state 461 $default reduce using rule 79 (opt_asc_desc) opt_asc_desc go to state 462
74 opt_order_by_clause → ORDER BY ordering_spec_commalist . [CLOSE, COMMIT, CREATE, DECLARE, DELETE, FETCH, GRANT, INSERT, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WITH, ';', '(', ')'] 76 ordering_spec_commalist → ordering_spec_commalist . ',' ordering_spec ',' shift, and go to state 463 $default reduce using rule 74 (opt_order_by_clause)
75 ordering_spec_commalist → ordering_spec . $default reduce using rule 75 (ordering_spec_commalist)
78 ordering_spec → column_ref . opt_asc_desc 79 opt_asc_desc → . [CLOSE, COMMIT, CREATE, DECLARE, DELETE, FETCH, GRANT, INSERT, OPEN, ORDER, PROCEDURE, ROLLBACK, SELECT, UNION, UPDATE, WITH, ';', '(', ')', ','] 80 | . ASC 81 | . DESC ASC shift, and go to state 460 DESC shift, and go to state 461 $default reduce using rule 79 (opt_asc_desc) opt_asc_desc go to state 464
38 opt_with_check_option → WITH . CHECK OPTION CHECK shift, and go to state 465
36 view_def → CREATE VIEW table opt_column_commalist AS query_spec opt_with_check_option . $default reduce using rule 36 (view_def)
43 opt_with_grant_option → WITH . GRANT OPTION GRANT shift, and go to state 466
55 grantee_commalist → grantee_commalist ',' . grantee 56 grantee → . PUBLIC 57 | . user 257 user → . NAME NAME shift, and go to state 100 PUBLIC shift, and go to state 417 grantee go to state 467 user go to state 420
41 privilege_def → GRANT privileges ON table TO grantee_commalist opt_with_grant_option . $default reduce using rule 41 (privilege_def)
31 table_constraint_def → FOREIGN KEY '(' column_commalist ')' REFERENCES table . [')', ','] 32 | FOREIGN KEY '(' column_commalist ')' REFERENCES table . '(' column_commalist ')' '(' shift, and go to state 468 $default reduce using rule 31 (table_constraint_def)
244 data_type → DECIMAL '(' INTNUM ',' INTNUM ')' . $default reduce using rule 244 (data_type)
241 data_type → NUMERIC '(' INTNUM ',' INTNUM ')' . $default reduce using rule 241 (data_type)
22 column_def_opt → NOT NULLX PRIMARY KEY . $default reduce using rule 22 (column_def_opt)
26 column_def_opt → CHECK '(' search_condition ')' . $default reduce using rule 26 (column_def_opt)
28 column_def_opt → REFERENCES table '(' column_commalist . ')' 35 column_commalist → column_commalist . ',' column ')' shift, and go to state 469 ',' shift, and go to state 254
202 subquery → '(' SELECT opt_all_distinct selection table_exp ')' . $default reduce using rule 202 (subquery)
72 cursor_def → DECLARE cursor CURSOR FOR query_exp . opt_order_by_clause 73 opt_order_by_clause → . [DECLARE, PROCEDURE] 74 | . ORDER BY ordering_spec_commalist 138 query_exp → query_exp . UNION query_term 139 | query_exp . UNION ALL query_term ORDER shift, and go to state 376 UNION shift, and go to state 61 $default reduce using rule 73 (opt_order_by_clause) opt_order_by_clause go to state 470
12 base_table_def → . CREATE TABLE table '(' base_table_element_commalist ')' 84 procedure_def → PROCEDURE procedure parameter_def_list ';' . manipulative_statement_list 85 manipulative_statement_list → . manipulative_statement 86 | . manipulative_statement_list manipulative_statement 92 manipulative_statement → . close_statement 93 | . commit_statement 94 | . delete_statement_positioned 95 | . delete_statement_searched 96 | . fetch_statement 97 | . insert_statement 98 | . open_statement 99 | . rollback_statement 100 | . select_statement 101 | . query_statement 102 | . update_statement_positioned 103 | . update_statement_searched 104 | . create_statement 105 close_statement → . CLOSE cursor 106 commit_statement → . COMMIT WORK 107 delete_statement_positioned → . DELETE FROM table WHERE CURRENT OF cursor 108 delete_statement_searched → . DELETE FROM table opt_where_clause 109 fetch_statement → . FETCH cursor INTO target_commalist 110 insert_statement → . INSERT INTO table opt_column_commalist values_or_query_spec 117 open_statement → . OPEN cursor 118 rollback_statement → . ROLLBACK WORK 119 select_statement → . SELECT opt_all_distinct selection INTO target_commalist table_exp 120 query_statement → . query_exp 121 create_statement → . base_table_def 125 update_statement_positioned → . UPDATE table SET assignment_commalist WHERE CURRENT OF cursor 131 update_statement_searched → . UPDATE table SET assignment_commalist opt_where_clause 137 query_exp → . query_term 138 | . query_exp UNION query_term 139 | . query_exp UNION ALL query_term 140 query_term → . query_spec 141 | . '(' query_exp ')' 142 query_spec → . SELECT opt_all_distinct selection table_exp CLOSE shift, and go to state 1 COMMIT shift, and go to state 2 CREATE shift, and go to state 471 DELETE shift, and go to state 4 FETCH shift, and go to state 5 INSERT shift, and go to state 6 OPEN shift, and go to state 8 ROLLBACK shift, and go to state 9 SELECT shift, and go to state 10 UPDATE shift, and go to state 11 '(' shift, and go to state 13 base_table_def go to state 17 manipulative_statement_list go to state 472 manipulative_statement go to state 473 close_statement go to state 20 commit_statement go to state 21 delete_statement_positioned go to state 22 delete_statement_searched go to state 23 fetch_statement go to state 24 insert_statement go to state 25 open_statement go to state 26 rollback_statement go to state 27 select_statement go to state 28 query_statement go to state 29 create_statement go to state 30 update_statement_positioned go to state 31 update_statement_searched go to state 32 query_exp go to state 33 query_term go to state 34 query_spec go to state 35
88 parameter_def_list → parameter_def_list parameter_def . $default reduce using rule 88 (parameter_def_list)
89 parameter_def → parameter data_type . $default reduce using rule 89 (parameter_def)
80 opt_asc_desc → ASC . $default reduce using rule 80 (opt_asc_desc)
81 opt_asc_desc → DESC . $default reduce using rule 81 (opt_asc_desc)
77 ordering_spec → INTNUM opt_asc_desc . $default reduce using rule 77 (ordering_spec)
76 ordering_spec_commalist → ordering_spec_commalist ',' . ordering_spec 77 ordering_spec → . INTNUM opt_asc_desc 78 | . column_ref opt_asc_desc 232 column_ref → . NAME 233 | . NAME '.' NAME 234 | . NAME '.' NAME '.' NAME NAME shift, and go to state 68 INTNUM shift, and go to state 440 ordering_spec go to state 474 column_ref go to state 443
78 ordering_spec → column_ref opt_asc_desc . $default reduce using rule 78 (ordering_spec)
38 opt_with_check_option → WITH CHECK . OPTION OPTION shift, and go to state 475
43 opt_with_grant_option → WITH GRANT . OPTION OPTION shift, and go to state 476
55 grantee_commalist → grantee_commalist ',' grantee . $default reduce using rule 55 (grantee_commalist)
32 table_constraint_def → FOREIGN KEY '(' column_commalist ')' REFERENCES table '(' . column_commalist ')' 34 column_commalist → . column 35 | . column_commalist ',' column 251 column → . NAME NAME shift, and go to state 137 column_commalist go to state 477 column go to state 179
28 column_def_opt → REFERENCES table '(' column_commalist ')' . $default reduce using rule 28 (column_def_opt)
72 cursor_def → DECLARE cursor CURSOR FOR query_exp opt_order_by_clause . $default reduce using rule 72 (cursor_def)
12 base_table_def → CREATE . TABLE table '(' base_table_element_commalist ')' TABLE shift, and go to state 40
12 base_table_def → . CREATE TABLE table '(' base_table_element_commalist ')' 84 procedure_def → PROCEDURE procedure parameter_def_list ';' manipulative_statement_list . [PROCEDURE, ';'] 86 manipulative_statement_list → manipulative_statement_list . manipulative_statement 92 manipulative_statement → . close_statement 93 | . commit_statement 94 | . delete_statement_positioned 95 | . delete_statement_searched 96 | . fetch_statement 97 | . insert_statement 98 | . open_statement 99 | . rollback_statement 100 | . select_statement 101 | . query_statement 102 | . update_statement_positioned 103 | . update_statement_searched 104 | . create_statement 105 close_statement → . CLOSE cursor 106 commit_statement → . COMMIT WORK 107 delete_statement_positioned → . DELETE FROM table WHERE CURRENT OF cursor 108 delete_statement_searched → . DELETE FROM table opt_where_clause 109 fetch_statement → . FETCH cursor INTO target_commalist 110 insert_statement → . INSERT INTO table opt_column_commalist values_or_query_spec 117 open_statement → . OPEN cursor 118 rollback_statement → . ROLLBACK WORK 119 select_statement → . SELECT opt_all_distinct selection INTO target_commalist table_exp 120 query_statement → . query_exp 121 create_statement → . base_table_def 125 update_statement_positioned → . UPDATE table SET assignment_commalist WHERE CURRENT OF cursor 131 update_statement_searched → . UPDATE table SET assignment_commalist opt_where_clause 137 query_exp → . query_term 138 | . query_exp UNION query_term 139 | . query_exp UNION ALL query_term 140 query_term → . query_spec 141 | . '(' query_exp ')' 142 query_spec → . SELECT opt_all_distinct selection table_exp CLOSE shift, and go to state 1 COMMIT shift, and go to state 2 CREATE shift, and go to state 471 DELETE shift, and go to state 4 FETCH shift, and go to state 5 INSERT shift, and go to state 6 OPEN shift, and go to state 8 ROLLBACK shift, and go to state 9 SELECT shift, and go to state 10 UPDATE shift, and go to state 11 '(' shift, and go to state 13 $default reduce using rule 84 (procedure_def) base_table_def go to state 17 manipulative_statement go to state 478 close_statement go to state 20 commit_statement go to state 21 delete_statement_positioned go to state 22 delete_statement_searched go to state 23 fetch_statement go to state 24 insert_statement go to state 25 open_statement go to state 26 rollback_statement go to state 27 select_statement go to state 28 query_statement go to state 29 create_statement go to state 30 update_statement_positioned go to state 31 update_statement_searched go to state 32 query_exp go to state 33 query_term go to state 34 query_spec go to state 35
85 manipulative_statement_list → manipulative_statement . $default reduce using rule 85 (manipulative_statement_list)
76 ordering_spec_commalist → ordering_spec_commalist ',' ordering_spec . $default reduce using rule 76 (ordering_spec_commalist)
38 opt_with_check_option → WITH CHECK OPTION . $default reduce using rule 38 (opt_with_check_option)
43 opt_with_grant_option → WITH GRANT OPTION . $default reduce using rule 43 (opt_with_grant_option)
32 table_constraint_def → FOREIGN KEY '(' column_commalist ')' REFERENCES table '(' column_commalist . ')' 35 column_commalist → column_commalist . ',' column ')' shift, and go to state 479 ',' shift, and go to state 254
86 manipulative_statement_list → manipulative_statement_list manipulative_statement . $default reduce using rule 86 (manipulative_statement_list)
32 table_constraint_def → FOREIGN KEY '(' column_commalist ')' REFERENCES table '(' column_commalist ')' . $default reduce using rule 32 (table_constraint_def)