Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
sql_yacc.cpp
Package: mysql-4.1.16-win-src.zip [view]
Upload User: romrleung
Upload Date: 2022-05-23
Package Size: 18897k
Code Size: 979k
Category:
MySQL
Development Platform:
Visual C++
- case 292:
- #line 1639 "sql_yacc.yy"
- { yyval.charset=yyvsp[0].charset; }
- break;
- case 293:
- #line 1640 "sql_yacc.yy"
- { yyval.charset=NULL; }
- break;
- case 294:
- #line 1645 "sql_yacc.yy"
- {
- if (!(yyval.charset=get_charset_by_csname(yyvsp[0].lex_str.str,MY_CS_PRIMARY,MYF(0))) &&
- !(yyval.charset=get_old_charset_by_name(yyvsp[0].lex_str.str)))
- {
- net_printf(YYTHD,ER_UNKNOWN_CHARACTER_SET,yyvsp[0].lex_str.str);
- YYABORT;
- }
- }
- break;
- case 295:
- #line 1653 "sql_yacc.yy"
- { yyval.charset= &my_charset_bin; }
- break;
- case 296:
- #line 1657 "sql_yacc.yy"
- { yyval.charset=yyvsp[0].charset; }
- break;
- case 297:
- #line 1658 "sql_yacc.yy"
- { yyval.charset=NULL; }
- break;
- case 298:
- #line 1662 "sql_yacc.yy"
- {
- if (!(yyval.charset=get_charset_by_name(yyvsp[0].lex_str.str,MYF(0))))
- {
- net_printf(YYTHD,ER_UNKNOWN_COLLATION,yyvsp[0].lex_str.str);
- YYABORT;
- }
- }
- break;
- case 299:
- #line 1671 "sql_yacc.yy"
- { yyval.charset=NULL; }
- break;
- case 300:
- #line 1672 "sql_yacc.yy"
- { yyval.charset=yyvsp[0].charset; }
- break;
- case 301:
- #line 1676 "sql_yacc.yy"
- { yyval.charset=yyvsp[0].charset; }
- break;
- case 302:
- #line 1677 "sql_yacc.yy"
- { yyval.charset=NULL; }
- break;
- case 303:
- #line 1680 "sql_yacc.yy"
- {}
- break;
- case 304:
- #line 1681 "sql_yacc.yy"
- {}
- break;
- case 305:
- #line 1684 "sql_yacc.yy"
- { Lex->charset=NULL; }
- break;
- case 306:
- #line 1685 "sql_yacc.yy"
- { Lex->charset=&my_charset_latin1; }
- break;
- case 307:
- #line 1686 "sql_yacc.yy"
- { Lex->charset=&my_charset_bin; }
- break;
- case 308:
- #line 1688 "sql_yacc.yy"
- {
- if (!(Lex->charset=get_charset_by_csname("ucs2",MY_CS_PRIMARY,MYF(0))))
- {
- net_printf(YYTHD,ER_UNKNOWN_CHARACTER_SET,"ucs2");
- YYABORT;
- }
- }
- break;
- case 309:
- #line 1695 "sql_yacc.yy"
- { Lex->charset=yyvsp[0].charset; }
- break;
- case 312:
- #line 1704 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->fk_delete_opt= lex->fk_update_opt= lex->fk_match_option= 0;
- lex->ref_list.empty();
- }
- break;
- case 313:
- #line 1710 "sql_yacc.yy"
- {
- yyval.table=yyvsp[-2].table;
- }
- break;
- case 314:
- #line 1715 "sql_yacc.yy"
- {}
- break;
- case 315:
- #line 1716 "sql_yacc.yy"
- {}
- break;
- case 316:
- #line 1719 "sql_yacc.yy"
- { Lex->ref_list.push_back(new key_part_spec(yyvsp[0].lex_str.str)); }
- break;
- case 317:
- #line 1720 "sql_yacc.yy"
- { Lex->ref_list.push_back(new key_part_spec(yyvsp[0].lex_str.str)); }
- break;
- case 318:
- #line 1724 "sql_yacc.yy"
- {}
- break;
- case 319:
- #line 1725 "sql_yacc.yy"
- {}
- break;
- case 320:
- #line 1728 "sql_yacc.yy"
- {}
- break;
- case 321:
- #line 1729 "sql_yacc.yy"
- {}
- break;
- case 322:
- #line 1732 "sql_yacc.yy"
- { Lex->fk_delete_opt= yyvsp[0].num; }
- break;
- case 323:
- #line 1733 "sql_yacc.yy"
- { Lex->fk_update_opt= yyvsp[0].num; }
- break;
- case 324:
- #line 1734 "sql_yacc.yy"
- { Lex->fk_match_option= foreign_key::FK_MATCH_FULL; }
- break;
- case 325:
- #line 1735 "sql_yacc.yy"
- { Lex->fk_match_option= foreign_key::FK_MATCH_PARTIAL; }
- break;
- case 326:
- #line 1736 "sql_yacc.yy"
- { Lex->fk_match_option= foreign_key::FK_MATCH_SIMPLE; }
- break;
- case 327:
- #line 1739 "sql_yacc.yy"
- { yyval.num= (int) foreign_key::FK_OPTION_RESTRICT; }
- break;
- case 328:
- #line 1740 "sql_yacc.yy"
- { yyval.num= (int) foreign_key::FK_OPTION_CASCADE; }
- break;
- case 329:
- #line 1741 "sql_yacc.yy"
- { yyval.num= (int) foreign_key::FK_OPTION_SET_NULL; }
- break;
- case 330:
- #line 1742 "sql_yacc.yy"
- { yyval.num= (int) foreign_key::FK_OPTION_NO_ACTION; }
- break;
- case 331:
- #line 1743 "sql_yacc.yy"
- { yyval.num= (int) foreign_key::FK_OPTION_DEFAULT; }
- break;
- case 332:
- #line 1746 "sql_yacc.yy"
- { yyval.key_type= Key::MULTIPLE; }
- break;
- case 333:
- #line 1747 "sql_yacc.yy"
- { yyval.key_type= Key::FULLTEXT; }
- break;
- case 334:
- #line 1749 "sql_yacc.yy"
- {
- #ifdef HAVE_SPATIAL
- yyval.key_type= Key::SPATIAL;
- #else
- net_printf(Lex->thd, ER_FEATURE_DISABLED,
- sym_group_geom.name, sym_group_geom.needed_define);
- YYABORT;
- #endif
- }
- break;
- case 335:
- #line 1760 "sql_yacc.yy"
- { yyval.key_type= Key::PRIMARY; }
- break;
- case 336:
- #line 1761 "sql_yacc.yy"
- { yyval.key_type= Key::UNIQUE; }
- break;
- case 337:
- #line 1764 "sql_yacc.yy"
- {}
- break;
- case 338:
- #line 1765 "sql_yacc.yy"
- {}
- break;
- case 339:
- #line 1768 "sql_yacc.yy"
- {}
- break;
- case 341:
- #line 1773 "sql_yacc.yy"
- {}
- break;
- case 342:
- #line 1774 "sql_yacc.yy"
- {}
- break;
- case 343:
- #line 1775 "sql_yacc.yy"
- {}
- break;
- case 344:
- #line 1778 "sql_yacc.yy"
- { yyval.key_type= Key::MULTIPLE; }
- break;
- case 345:
- #line 1779 "sql_yacc.yy"
- { yyval.key_type= Key::UNIQUE; }
- break;
- case 346:
- #line 1780 "sql_yacc.yy"
- { yyval.key_type= Key::FULLTEXT;}
- break;
- case 347:
- #line 1782 "sql_yacc.yy"
- {
- #ifdef HAVE_SPATIAL
- yyval.key_type= Key::SPATIAL;
- #else
- net_printf(Lex->thd, ER_FEATURE_DISABLED,
- sym_group_geom.name, sym_group_geom.needed_define);
- YYABORT;
- #endif
- }
- break;
- case 348:
- #line 1794 "sql_yacc.yy"
- { yyval.key_alg= HA_KEY_ALG_UNDEF; }
- break;
- case 349:
- #line 1795 "sql_yacc.yy"
- { yyval.key_alg= yyvsp[0].key_alg; }
- break;
- case 350:
- #line 1796 "sql_yacc.yy"
- { yyval.key_alg= yyvsp[0].key_alg; }
- break;
- case 351:
- #line 1799 "sql_yacc.yy"
- { yyval.key_alg= HA_KEY_ALG_BTREE; }
- break;
- case 352:
- #line 1801 "sql_yacc.yy"
- {
- yyval.key_alg= HA_KEY_ALG_RTREE;
- }
- break;
- case 353:
- #line 1804 "sql_yacc.yy"
- { yyval.key_alg= HA_KEY_ALG_HASH; }
- break;
- case 354:
- #line 1807 "sql_yacc.yy"
- { Lex->col_list.push_back(yyvsp[-1].key_part); }
- break;
- case 355:
- #line 1808 "sql_yacc.yy"
- { Lex->col_list.push_back(yyvsp[-1].key_part); }
- break;
- case 356:
- #line 1811 "sql_yacc.yy"
- { yyval.key_part=new key_part_spec(yyvsp[0].lex_str.str); }
- break;
- case 357:
- #line 1813 "sql_yacc.yy"
- {
- int key_part_len= atoi(yyvsp[-1].lex_str.str);
- #if MYSQL_VERSION_ID < 50000
- if (!key_part_len)
- {
- my_printf_error(ER_UNKNOWN_ERROR,
- "Key part '%s' length cannot be 0",
- MYF(0), yyvsp[-3].lex_str.str);
- }
- #endif
- yyval.key_part=new key_part_spec(yyvsp[-3].lex_str.str,(uint) key_part_len);
- }
- break;
- case 358:
- #line 1827 "sql_yacc.yy"
- { yyval.simple_string=(char*) 0; }
- break;
- case 359:
- #line 1828 "sql_yacc.yy"
- { yyval.simple_string=yyvsp[0].lex_str.str; }
- break;
- case 360:
- #line 1831 "sql_yacc.yy"
- { yyval.lex_str.str= 0; yyval.lex_str.length= 0; }
- break;
- case 361:
- #line 1832 "sql_yacc.yy"
- { yyval.lex_str=yyvsp[0].lex_str; }
- break;
- case 362:
- #line 1835 "sql_yacc.yy"
- { Lex->interval_list.push_back(yyvsp[0].string); }
- break;
- case 363:
- #line 1836 "sql_yacc.yy"
- { Lex->interval_list.push_back(yyvsp[0].string); }
- break;
- case 364:
- #line 1844 "sql_yacc.yy"
- {
- THD *thd= YYTHD;
- LEX *lex= thd->lex;
- lex->sql_command= SQLCOM_ALTER_TABLE;
- lex->name= 0;
- lex->duplicates= DUP_ERROR;
- if (!lex->select_lex.add_table_to_list(thd, yyvsp[0].table, NULL,
- TL_OPTION_UPDATING))
- YYABORT;
- lex->create_list.empty();
- lex->key_list.empty();
- lex->col_list.empty();
- lex->select_lex.init_order();
- lex->select_lex.db=lex->name=0;
- bzero((char*) &lex->create_info,sizeof(lex->create_info));
- lex->create_info.db_type= DB_TYPE_DEFAULT;
- lex->create_info.default_table_charset= NULL;
- lex->create_info.row_type= ROW_TYPE_NOT_USED;
- lex->alter_info.reset();
- lex->alter_info.is_simple= 1;
- lex->alter_info.flags= 0;
- }
- break;
- case 365:
- #line 1867 "sql_yacc.yy"
- {}
- break;
- case 366:
- #line 1869 "sql_yacc.yy"
- {
- Lex->create_info.default_table_charset= NULL;
- Lex->create_info.used_fields= 0;
- }
- break;
- case 367:
- #line 1874 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->sql_command=SQLCOM_ALTER_DB;
- lex->name= yyvsp[-2].simple_string;
- }
- break;
- case 368:
- #line 1882 "sql_yacc.yy"
- { yyval.simple_string= 0; }
- break;
- case 369:
- #line 1883 "sql_yacc.yy"
- { yyval.simple_string= yyvsp[0].lex_str.str; }
- break;
- case 371:
- #line 1887 "sql_yacc.yy"
- { Lex->alter_info.tablespace_op= DISCARD_TABLESPACE; }
- break;
- case 372:
- #line 1888 "sql_yacc.yy"
- { Lex->alter_info.tablespace_op= IMPORT_TABLESPACE; }
- break;
- case 375:
- #line 1894 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->change=0;
- lex->alter_info.flags|= ALTER_ADD_COLUMN;
- }
- break;
- case 376:
- #line 1901 "sql_yacc.yy"
- { Lex->alter_info.is_simple= 0; }
- break;
- case 377:
- #line 1903 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->alter_info.is_simple= 0;
- lex->alter_info.flags|= ALTER_ADD_INDEX;
- }
- break;
- case 378:
- #line 1908 "sql_yacc.yy"
- { Lex->alter_info.is_simple= 0; }
- break;
- case 379:
- #line 1910 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->change= yyvsp[0].lex_str.str;
- lex->alter_info.is_simple= 0;
- lex->alter_info.flags|= ALTER_CHANGE_COLUMN;
- }
- break;
- case 381:
- #line 1918 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->length=lex->dec=0; lex->type=0;
- lex->default_value= lex->on_update_value= 0;
- lex->comment=0;
- lex->charset= NULL;
- lex->alter_info.is_simple= 0;
- lex->alter_info.flags|= ALTER_CHANGE_COLUMN;
- }
- break;
- case 382:
- #line 1928 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- if (add_field_to_list(lex->thd,yyvsp[-3].lex_str.str,
- (enum enum_field_types) yyvsp[-1].num,
- lex->length,lex->dec,lex->type,
- lex->default_value, lex->on_update_value,
- lex->comment,
- yyvsp[-3].lex_str.str, &lex->interval_list, lex->charset,
- lex->uint_geom_type))
- YYABORT;
- }
- break;
- case 384:
- #line 1941 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->alter_info.drop_list.push_back(new Alter_drop(Alter_drop::COLUMN,
- yyvsp[-1].lex_str.str));
- lex->alter_info.is_simple= 0;
- lex->alter_info.flags|= ALTER_DROP_COLUMN;
- }
- break;
- case 385:
- #line 1948 "sql_yacc.yy"
- { Lex->alter_info.is_simple= 0; }
- break;
- case 386:
- #line 1950 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->alter_info.drop_list.push_back(new Alter_drop(Alter_drop::KEY,
- primary_key_name));
- lex->alter_info.is_simple= 0;
- lex->alter_info.flags|= ALTER_DROP_INDEX;
- }
- break;
- case 387:
- #line 1958 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->alter_info.drop_list.push_back(new Alter_drop(Alter_drop::KEY,
- yyvsp[0].lex_str.str));
- lex->alter_info.is_simple= 0;
- lex->alter_info.flags|= ALTER_DROP_INDEX;
- }
- break;
- case 388:
- #line 1965 "sql_yacc.yy"
- { Lex->alter_info.keys_onoff= DISABLE; }
- break;
- case 389:
- #line 1966 "sql_yacc.yy"
- { Lex->alter_info.keys_onoff= ENABLE; }
- break;
- case 390:
- #line 1968 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->alter_info.alter_list.push_back(new Alter_column(yyvsp[-3].lex_str.str,yyvsp[0].item));
- lex->alter_info.is_simple= 0;
- lex->alter_info.flags|= ALTER_CHANGE_COLUMN;
- }
- break;
- case 391:
- #line 1975 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->alter_info.alter_list.push_back(new Alter_column(yyvsp[-2].lex_str.str,
- (Item*) 0));
- lex->alter_info.is_simple= 0;
- lex->alter_info.flags|= ALTER_CHANGE_COLUMN;
- }
- break;
- case 392:
- #line 1983 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->select_lex.db=yyvsp[0].table->db.str;
- lex->name= yyvsp[0].table->table.str;
- if (check_table_name(yyvsp[0].table->table.str,yyvsp[0].table->table.length) ||
- yyvsp[0].table->db.str && check_db_name(yyvsp[0].table->db.str))
- {
- net_printf(lex->thd,ER_WRONG_TABLE_NAME,yyvsp[0].table->table.str);
- YYABORT;
- }
- lex->alter_info.flags|= ALTER_RENAME;
- }
- break;
- case 393:
- #line 1996 "sql_yacc.yy"
- {
- if (!yyvsp[-1].charset)
- {
- THD *thd= YYTHD;
- yyvsp[-1].charset= thd->variables.collation_database;
- }
- yyvsp[0].charset= yyvsp[0].charset ? yyvsp[0].charset : yyvsp[-1].charset;
- if (!my_charset_same(yyvsp[-1].charset,yyvsp[0].charset))
- {
- net_printf(YYTHD,ER_COLLATION_CHARSET_MISMATCH,
- yyvsp[0].charset->name,yyvsp[-1].charset->csname);
- YYABORT;
- }
- LEX *lex= Lex;
- lex->create_info.table_charset=
- lex->create_info.default_table_charset= yyvsp[0].charset;
- lex->create_info.used_fields|= (HA_CREATE_USED_CHARSET |
- HA_CREATE_USED_DEFAULT_CHARSET);
- lex->alter_info.is_simple= 0;
- }
- break;
- case 394:
- #line 2017 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->alter_info.is_simple= 0;
- lex->alter_info.flags|= ALTER_OPTIONS;
- }
- break;
- case 395:
- #line 2023 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->alter_info.is_simple= 0;
- lex->alter_info.flags|= ALTER_ORDER;
- }
- break;
- case 396:
- #line 2030 "sql_yacc.yy"
- {}
- break;
- case 397:
- #line 2031 "sql_yacc.yy"
- {}
- break;
- case 398:
- #line 2034 "sql_yacc.yy"
- { Lex->ignore= 0;}
- break;
- case 399:
- #line 2035 "sql_yacc.yy"
- { Lex->ignore= 1;}
- break;
- case 400:
- #line 2039 "sql_yacc.yy"
- {}
- break;
- case 401:
- #line 2040 "sql_yacc.yy"
- {}
- break;
- case 402:
- #line 2041 "sql_yacc.yy"
- {}
- break;
- case 403:
- #line 2044 "sql_yacc.yy"
- {}
- break;
- case 404:
- #line 2045 "sql_yacc.yy"
- { store_position_for_column(yyvsp[0].lex_str.str); }
- break;
- case 405:
- #line 2046 "sql_yacc.yy"
- { store_position_for_column(first_keyword); }
- break;
- case 406:
- #line 2049 "sql_yacc.yy"
- {}
- break;
- case 407:
- #line 2050 "sql_yacc.yy"
- {}
- break;
- case 408:
- #line 2051 "sql_yacc.yy"
- {}
- break;
- case 409:
- #line 2052 "sql_yacc.yy"
- {}
- break;
- case 410:
- #line 2060 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->sql_command = SQLCOM_SLAVE_START;
- lex->type = 0;
- /* We'll use mi structure for UNTIL options */
- bzero((char*) &lex->mi, sizeof(lex->mi));
- /* If you change this code don't forget to update SLAVE START too */
- }
- break;
- case 411:
- #line 2069 "sql_yacc.yy"
- {}
- break;
- case 412:
- #line 2071 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->sql_command = SQLCOM_SLAVE_STOP;
- lex->type = 0;
- /* If you change this code don't forget to update SLAVE STOP too */
- }
- break;
- case 413:
- #line 2078 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->sql_command = SQLCOM_SLAVE_START;
- lex->type = 0;
- /* We'll use mi structure for UNTIL options */
- bzero((char*) &lex->mi, sizeof(lex->mi));
- }
- break;
- case 414:
- #line 2086 "sql_yacc.yy"
- {}
- break;
- case 415:
- #line 2088 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->sql_command = SQLCOM_SLAVE_STOP;
- lex->type = 0;
- }
- break;
- case 416:
- #line 2098 "sql_yacc.yy"
- {
- Lex->sql_command = SQLCOM_BEGIN;
- Lex->start_transaction_opt= yyvsp[0].num;
- }
- break;
- case 417:
- #line 2105 "sql_yacc.yy"
- { yyval.num = 0; }
- break;
- case 418:
- #line 2107 "sql_yacc.yy"
- {
- yyval.num= MYSQL_START_TRANS_OPT_WITH_CONS_SNAPSHOT;
- }
- break;
- case 419:
- #line 2113 "sql_yacc.yy"
- { Lex->slave_thd_opt= 0; }
- break;
- case 420:
- #line 2115 "sql_yacc.yy"
- {}
- break;
- case 423:
- #line 2124 "sql_yacc.yy"
- {}
- break;
- case 424:
- #line 2125 "sql_yacc.yy"
- { Lex->slave_thd_opt|=SLAVE_SQL; }
- break;
- case 425:
- #line 2126 "sql_yacc.yy"
- { Lex->slave_thd_opt|=SLAVE_IO; }
- break;
- case 426:
- #line 2130 "sql_yacc.yy"
- {}
- break;
- case 427:
- #line 2132 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- if ((lex->mi.log_file_name || lex->mi.pos) &&
- (lex->mi.relay_log_name || lex->mi.relay_log_pos) ||
- !((lex->mi.log_file_name && lex->mi.pos) ||
- (lex->mi.relay_log_name && lex->mi.relay_log_pos)))
- {
- send_error(lex->thd, ER_BAD_SLAVE_UNTIL_COND);
- YYABORT;
- }
- }
- break;
- case 430:
- #line 2153 "sql_yacc.yy"
- {
- Lex->sql_command = SQLCOM_RESTORE_TABLE;
- }
- break;
- case 431:
- #line 2157 "sql_yacc.yy"
- {
- Lex->backup_dir = yyvsp[0].lex_str.str;
- }
- break;
- case 432:
- #line 2163 "sql_yacc.yy"
- {
- Lex->sql_command = SQLCOM_BACKUP_TABLE;
- }
- break;
- case 433:
- #line 2167 "sql_yacc.yy"
- {
- Lex->backup_dir = yyvsp[0].lex_str.str;
- }
- break;
- case 434:
- #line 2173 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->sql_command = SQLCOM_CHECKSUM;
- }
- break;
- case 435:
- #line 2178 "sql_yacc.yy"
- {}
- break;
- case 436:
- #line 2182 "sql_yacc.yy"
- { Lex->check_opt.flags= 0; }
- break;
- case 437:
- #line 2183 "sql_yacc.yy"
- { Lex->check_opt.flags= T_QUICK; }
- break;
- case 438:
- #line 2184 "sql_yacc.yy"
- { Lex->check_opt.flags= T_EXTEND; }
- break;
- case 439:
- #line 2189 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->sql_command = SQLCOM_REPAIR;
- lex->no_write_to_binlog= yyvsp[-1].num;
- lex->check_opt.init();
- }
- break;
- case 440:
- #line 2196 "sql_yacc.yy"
- {}
- break;
- case 441:
- #line 2200 "sql_yacc.yy"
- { Lex->check_opt.flags = T_MEDIUM; }
- break;
- case 442:
- #line 2201 "sql_yacc.yy"
- {}
- break;
- case 443:
- #line 2204 "sql_yacc.yy"
- {}
- break;
- case 444:
- #line 2205 "sql_yacc.yy"
- {}
- break;
- case 445:
- #line 2208 "sql_yacc.yy"
- { Lex->check_opt.flags|= T_QUICK; }
- break;
- case 446:
- #line 2209 "sql_yacc.yy"
- { Lex->check_opt.flags|= T_EXTEND; }
- break;
- case 447:
- #line 2210 "sql_yacc.yy"
- { Lex->check_opt.sql_flags|= TT_USEFRM; }
- break;
- case 448:
- #line 2214 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->sql_command = SQLCOM_ANALYZE;
- lex->no_write_to_binlog= yyvsp[-1].num;
- lex->check_opt.init();
- }
- break;
- case 449:
- #line 2221 "sql_yacc.yy"
- {}
- break;
- case 450:
- #line 2226 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->sql_command = SQLCOM_CHECK;
- lex->check_opt.init();
- }
- break;
- case 451:
- #line 2232 "sql_yacc.yy"
- {}
- break;
- case 452:
- #line 2236 "sql_yacc.yy"
- { Lex->check_opt.flags = T_MEDIUM; }
- break;
- case 453:
- #line 2237 "sql_yacc.yy"
- {}
- break;
- case 454:
- #line 2240 "sql_yacc.yy"
- {}
- break;
- case 455:
- #line 2241 "sql_yacc.yy"
- {}
- break;
- case 456:
- #line 2244 "sql_yacc.yy"
- { Lex->check_opt.flags|= T_QUICK; }
- break;
- case 457:
- #line 2245 "sql_yacc.yy"
- { Lex->check_opt.flags|= T_FAST; }
- break;
- case 458:
- #line 2246 "sql_yacc.yy"
- { Lex->check_opt.flags|= T_MEDIUM; }
- break;
- case 459:
- #line 2247 "sql_yacc.yy"
- { Lex->check_opt.flags|= T_EXTEND; }
- break;
- case 460:
- #line 2248 "sql_yacc.yy"
- { Lex->check_opt.flags|= T_CHECK_ONLY_CHANGED; }
- break;
- case 461:
- #line 2252 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->sql_command = SQLCOM_OPTIMIZE;
- lex->no_write_to_binlog= yyvsp[-1].num;
- lex->check_opt.init();
- }
- break;
- case 462:
- #line 2259 "sql_yacc.yy"
- {}
- break;
- case 463:
- #line 2263 "sql_yacc.yy"
- { yyval.num= 0; }
- break;
- case 464:
- #line 2264 "sql_yacc.yy"
- { yyval.num= 1; }
- break;
- case 465:
- #line 2265 "sql_yacc.yy"
- { yyval.num= 1; }
- break;
- case 466:
- #line 2270 "sql_yacc.yy"
- {
- Lex->sql_command=SQLCOM_RENAME_TABLE;
- }
- break;
- case 467:
- #line 2274 "sql_yacc.yy"
- {}
- break;
- case 470:
- #line 2283 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- SELECT_LEX *sl= lex->current_select;
- if (!sl->add_table_to_list(lex->thd, yyvsp[-2].table,NULL,TL_OPTION_UPDATING,
- TL_IGNORE) ||
- !sl->add_table_to_list(lex->thd, yyvsp[0].table,NULL,TL_OPTION_UPDATING,
- TL_IGNORE))
- YYABORT;
- }
- break;
- case 471:
- #line 2295 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->sql_command= SQLCOM_ASSIGN_TO_KEYCACHE;
- lex->name_and_length= yyvsp[0].lex_str;
- }
- break;
- case 474:
- #line 2308 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- SELECT_LEX *sel= &lex->select_lex;
- if (!sel->add_table_to_list(lex->thd, yyvsp[-1].table, NULL, 0,
- TL_READ,
- sel->get_use_index(),
- (List<String> *)0))
- YYABORT;
- }
- break;
- case 475:
- #line 2320 "sql_yacc.yy"
- { yyval.lex_str= yyvsp[0].lex_str; }
- break;
- case 476:
- #line 2321 "sql_yacc.yy"
- { yyval.lex_str = default_key_cache_base; }
- break;
- case 477:
- #line 2326 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->sql_command=SQLCOM_PRELOAD_KEYS;
- }
- break;
- case 478:
- #line 2331 "sql_yacc.yy"
- {}
- break;
- case 481:
- #line 2340 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- SELECT_LEX *sel= &lex->select_lex;
- if (!sel->add_table_to_list(lex->thd, yyvsp[-2].table, NULL, yyvsp[0].num,
- TL_READ,
- sel->get_use_index(),
- (List<String> *)0))
- YYABORT;
- }
- break;
- case 482:
- #line 2352 "sql_yacc.yy"
- { Select->interval_list.empty(); }
- break;
- case 483:
- #line 2354 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- SELECT_LEX *sel= &lex->select_lex;
- sel->use_index= sel->interval_list;
- }
- break;
- case 484:
- #line 2362 "sql_yacc.yy"
- { Lex->select_lex.use_index_ptr= 0; }
- break;
- case 485:
- #line 2364 "sql_yacc.yy"
- {
- SELECT_LEX *sel= &Lex->select_lex;
- sel->use_index_ptr= &sel->use_index;
- }
- break;
- case 486:
- #line 2372 "sql_yacc.yy"
- { yyval.num= 0; }
- break;
- case 487:
- #line 2373 "sql_yacc.yy"
- { yyval.num= TL_OPTION_IGNORE_LEAVES; }
- break;
- case 488:
- #line 2383 "sql_yacc.yy"
- {
- LEX *lex= Lex;
- lex->sql_command= SQLCOM_SELECT;
- lex->select_lex.resolve_mode= SELECT_LEX::SELECT_MODE;
- }
- break;
- case 491:
- #line 2398 "sql_yacc.yy"
- {
- LEX *lex= Lex;
- SELECT_LEX * sel= lex->current_select;
- if (sel->set_braces(1))
- {
- yyerror(ER(ER_SYNTAX_ERROR));
- YYABORT;
- }
- if (sel->linkage == UNION_TYPE &&
- !sel->master_unit()->first_select()->braces)
- {
- yyerror(ER(ER_SYNTAX_ERROR));
- YYABORT;
- }
- /* select in braces, can't contain global parameters */
- if (sel->master_unit()->fake_select_lex)
- sel->master_unit()->global_parameters=
- sel->master_unit()->fake_select_lex;
- }
- break;
- case 493:
- #line 2421 "sql_yacc.yy"
- {
- LEX *lex= Lex;
- SELECT_LEX * sel= lex->current_select;
- if (lex->current_select->set_braces(0))
- {
- yyerror(ER(ER_SYNTAX_ERROR));
- YYABORT;
- }
- if (sel->linkage == UNION_TYPE &&
- sel->master_unit()->first_select()->braces)
- {
- yyerror(ER(ER_SYNTAX_ERROR));
- YYABORT;
- }
- }
- break;
- case 495:
- #line 2440 "sql_yacc.yy"
- {
- LEX *lex= Lex;
- SELECT_LEX *sel= lex->current_select;
- if (sel->linkage != UNION_TYPE)
- mysql_init_select(lex);
- lex->current_select->parsing_place= SELECT_LIST;
- }
- break;
- case 496:
- #line 2448 "sql_yacc.yy"
- {
- Select->parsing_place= NO_MATTER;
- }
- break;
- case 498:
- #line 2454 "sql_yacc.yy"
- {}
- break;
- case 506:
- #line 2473 "sql_yacc.yy"
- {
- if (test_all_bits(Select->options, SELECT_ALL | SELECT_DISTINCT))
- {
- net_printf(Lex->thd, ER_WRONG_USAGE, "ALL", "DISTINCT");
- YYABORT;
- }
- }
- break;
- case 509:
- #line 2487 "sql_yacc.yy"
- { Select->options|= SELECT_STRAIGHT_JOIN; }
- break;
- case 510:
- #line 2489 "sql_yacc.yy"
- {
- if (check_simple_select())
- YYABORT;
- Lex->lock_option= TL_READ_HIGH_PRIORITY;
- }
- break;
- case 511:
- #line 2494 "sql_yacc.yy"
- { Select->options|= SELECT_DISTINCT; }
- break;
- case 512:
- #line 2495 "sql_yacc.yy"
- { Select->options|= SELECT_SMALL_RESULT; }
- break;
- case 513:
- #line 2496 "sql_yacc.yy"
- { Select->options|= SELECT_BIG_RESULT; }
- break;
- case 514:
- #line 2498 "sql_yacc.yy"
- {
- if (check_simple_select())
- YYABORT;
- Select->options|= OPTION_BUFFER_RESULT;
- }
- break;
- case 515:
- #line 2504 "sql_yacc.yy"
- {
- if (check_simple_select())
- YYABORT;
- Select->options|= OPTION_FOUND_ROWS;
- }
- break;
- case 516:
- #line 2509 "sql_yacc.yy"
- { Lex->safe_to_cache_query=0; }
- break;
- case 517:
- #line 2511 "sql_yacc.yy"
- {
- Lex->select_lex.options|= OPTION_TO_QUERY_CACHE;
- }
- break;
- case 518:
- #line 2514 "sql_yacc.yy"
- { Select->options|= SELECT_ALL; }
- break;
- case 520:
- #line 2520 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->current_select->set_lock_for_tables(TL_WRITE);
- lex->safe_to_cache_query=0;
- }
- break;
- case 521:
- #line 2526 "sql_yacc.yy"
- {
- LEX *lex=Lex;
- lex->current_select->
- set_lock_for_tables(TL_READ_WITH_SHARED_LOCKS);
- lex->safe_to_cache_query=0;
- }
- break;
- case 524:
- #line 2538 "sql_yacc.yy"
- {
- THD *thd= YYTHD;
- if (add_item_to_list(thd, new Item_field(NULL, NULL, "*")))
- YYABORT;
- (thd->lex->current_select->with_wild)++;
- }
- break;
- case 525:
- #line 2548 "sql_yacc.yy"
- {
- if (add_item_to_list(YYTHD, yyvsp[-2].item))
- YYABORT;
- if (yyvsp[0].lex_str.str)
- yyvsp[-2].item->set_name(yyvsp[0].lex_str.str,yyvsp[0].lex_str.length,system_charset_info);
- else if (!yyvsp[-2].item->name)
- yyvsp[-2].item->set_name(yyvsp[-3].simple_string,(uint) (yyvsp[-1].simple_string - yyvsp[-3].simple_string), YYTHD->charset());
- }
- break;
- case 526:
- #line 2558 "sql_yacc.yy"
- { yyval.simple_string=(char*) Lex->tok_start; }
- break;
- case 527:
- #line 2561 "sql_yacc.yy"
- { yyval.simple_string=(char*) Lex->tok_end; }
- break;
- case 528:
- #line 2564 "sql_yacc.yy"
- { yyval.item=yyvsp[0].item; }
- break;
- case 529:
- #line 2565 "sql_yacc.yy"
- { yyval.item=yyvsp[0].item; }
- break;
- case 530:
- #line 2568 "sql_yacc.yy"
- { yyval.lex_str.str=0;}
- break;
- case 531:
- #line 2569 "sql_yacc.yy"
- { yyval.lex_str=yyvsp[0].lex_str; }
- break;
- case 532:
- #line 2570 "sql_yacc.yy"
- { yyval.lex_str=yyvsp[0].lex_str; }
- break;
- case 533:
- #line 2571 "sql_yacc.yy"
- { yyval.lex_str=yyvsp[0].lex_str; }
- break;
- case 534:
- #line 2572 "sql_yacc.yy"
- { yyval.lex_str=yyvsp[0].lex_str; }
- break;
- case 535:
- #line 2576 "sql_yacc.yy"
- {}
- break;
- case 536:
- #line 2577 "sql_yacc.yy"
- {}
- break;
- case 537:
- #line 2581 "sql_yacc.yy"
- { yyval.item= yyvsp[0].item; }
- break;
- case 538:
- #line 2582 "sql_yacc.yy"
- { yyval.item= yyvsp[0].item; }
- break;
- case 539:
- #line 2585 "sql_yacc.yy"
- { yyval.boolfunc2creator = &comp_eq_creator; }
- break;
- case 540:
- #line 2586 "sql_yacc.yy"
- { yyval.boolfunc2creator = &comp_ge_creator; }
- break;
- case 541:
- #line 2587 "sql_yacc.yy"
- { yyval.boolfunc2creator = &comp_gt_creator; }
- break;
- case 542:
- #line 2588 "sql_yacc.yy"
- { yyval.boolfunc2creator = &comp_le_creator; }
- break;
- case 543:
- #line 2589 "sql_yacc.yy"
- { yyval.boolfunc2creator = &comp_lt_creator; }
- break;
- case 544:
- #line 2590 "sql_yacc.yy"
- { yyval.boolfunc2creator = &comp_ne_creator; }
- break;
- case 545:
- #line 2593 "sql_yacc.yy"
- { yyval.num = 1; }
- break;
- case 546:
- #line 2594 "sql_yacc.yy"
- { yyval.num = 0; }
- break;
- case 547:
- #line 2600 "sql_yacc.yy"
- { yyvsp[-1].item_list->push_front(yyvsp[-4].item); yyval.item= new Item_func_in(*yyvsp[-1].item_list); }
- break;
- case 548:
- #line 2602 "sql_yacc.yy"
- {
- yyvsp[-1].item_list->push_front(yyvsp[-5].item);
- Item_func_in *item= new Item_func_in(*yyvsp[-1].item_list);
- item->negate();
- yyval.item= item;
- }
- break;
- case 549:
- #line 2609 "sql_yacc.yy"
- { yyval.item= new Item_in_subselect(yyvsp[-2].item, yyvsp[0].select_lex); }
- break;
- case 550:
- #line 2611 "sql_yacc.yy"
- {
- yyval.item= new Item_func_not(new Item_in_subselect(yyvsp[-3].item, yyvsp[0].select_lex));
- }
- break;
- case 551:
- #line 2615 "sql_yacc.yy"
- { yyval.item= new Item_func_between(yyvsp[-4].item,yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 552:
- #line 2617 "sql_yacc.yy"
- {
- Item_func_between *item= new Item_func_between(yyvsp[-5].item,yyvsp[-2].item,yyvsp[0].item);
- item->negate();
- yyval.item= item;
- }
- break;
- case 553:
- #line 2622 "sql_yacc.yy"
- { yyval.item= or_or_concat(YYTHD, yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 554:
- #line 2623 "sql_yacc.yy"
- { yyval.item= new Item_cond_or(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 555:
- #line 2624 "sql_yacc.yy"
- { yyval.item= new Item_cond_xor(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 556:
- #line 2625 "sql_yacc.yy"
- { yyval.item= new Item_cond_and(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 557:
- #line 2627 "sql_yacc.yy"
- {
- yyval.item= new Item_func_eq(new Item_func_soundex(yyvsp[-3].item),
- new Item_func_soundex(yyvsp[0].item));
- }
- break;
- case 558:
- #line 2632 "sql_yacc.yy"
- { yyval.item= new Item_func_like(yyvsp[-3].item,yyvsp[-1].item,yyvsp[0].item); }
- break;
- case 559:
- #line 2634 "sql_yacc.yy"
- { yyval.item= new Item_func_not(new Item_func_like(yyvsp[-4].item,yyvsp[-1].item,yyvsp[0].item));}
- break;
- case 560:
- #line 2635 "sql_yacc.yy"
- { yyval.item= new Item_func_regex(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 561:
- #line 2637 "sql_yacc.yy"
- { yyval.item= new Item_func_not(new Item_func_regex(yyvsp[-3].item,yyvsp[0].item)); }
- break;
- case 562:
- #line 2638 "sql_yacc.yy"
- { yyval.item= new Item_func_isnull(yyvsp[-2].item); }
- break;
- case 563:
- #line 2639 "sql_yacc.yy"
- { yyval.item= new Item_func_isnotnull(yyvsp[-3].item); }
- break;
- case 564:
- #line 2640 "sql_yacc.yy"
- { yyval.item= new Item_func_equal(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 565:
- #line 2641 "sql_yacc.yy"
- { yyval.item= (*yyvsp[-1].boolfunc2creator)(0)->create(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 566:
- #line 2643 "sql_yacc.yy"
- {
- yyval.item= all_any_subquery_creator(yyvsp[-3].item, yyvsp[-2].boolfunc2creator, yyvsp[-1].num, yyvsp[0].select_lex);
- }
- break;
- case 567:
- #line 2646 "sql_yacc.yy"
- { yyval.item= new Item_func_shift_left(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 568:
- #line 2647 "sql_yacc.yy"
- { yyval.item= new Item_func_shift_right(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 569:
- #line 2648 "sql_yacc.yy"
- { yyval.item= new Item_func_plus(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 570:
- #line 2649 "sql_yacc.yy"
- { yyval.item= new Item_func_minus(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 571:
- #line 2650 "sql_yacc.yy"
- { yyval.item= new Item_func_mul(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 572:
- #line 2651 "sql_yacc.yy"
- { yyval.item= new Item_func_div(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 573:
- #line 2652 "sql_yacc.yy"
- { yyval.item= new Item_func_int_div(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 574:
- #line 2653 "sql_yacc.yy"
- { yyval.item= new Item_func_mod(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 575:
- #line 2654 "sql_yacc.yy"
- { yyval.item= new Item_func_bit_or(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 576:
- #line 2655 "sql_yacc.yy"
- { yyval.item= new Item_func_bit_xor(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 577:
- #line 2656 "sql_yacc.yy"
- { yyval.item= new Item_func_bit_and(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 578:
- #line 2657 "sql_yacc.yy"
- { yyval.item= new Item_func_mod(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 579:
- #line 2659 "sql_yacc.yy"
- { yyval.item= new Item_date_add_interval(yyvsp[-3].item,yyvsp[-1].item,yyvsp[0].interval,0); }
- break;
- case 580:
- #line 2661 "sql_yacc.yy"
- { yyval.item= new Item_date_add_interval(yyvsp[-3].item,yyvsp[-1].item,yyvsp[0].interval,1); }
- break;
- case 581:
- #line 2667 "sql_yacc.yy"
- { yyval.item= new Item_func_between(yyvsp[-4].item,yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 582:
- #line 2669 "sql_yacc.yy"
- {
- Item_func_between *item= new Item_func_between(yyvsp[-5].item,yyvsp[-2].item,yyvsp[0].item);
- item->negate();
- yyval.item= item;
- }
- break;
- case 583:
- #line 2674 "sql_yacc.yy"
- { yyval.item= or_or_concat(YYTHD, yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 584:
- #line 2675 "sql_yacc.yy"
- { yyval.item= new Item_cond_or(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 585:
- #line 2676 "sql_yacc.yy"
- { yyval.item= new Item_cond_xor(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 586:
- #line 2677 "sql_yacc.yy"
- { yyval.item= new Item_cond_and(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 587:
- #line 2679 "sql_yacc.yy"
- {
- yyval.item= new Item_func_eq(new Item_func_soundex(yyvsp[-3].item),
- new Item_func_soundex(yyvsp[0].item));
- }
- break;
- case 588:
- #line 2684 "sql_yacc.yy"
- { yyval.item= new Item_func_like(yyvsp[-3].item,yyvsp[-1].item,yyvsp[0].item); }
- break;
- case 589:
- #line 2686 "sql_yacc.yy"
- { yyval.item= new Item_func_not(new Item_func_like(yyvsp[-4].item,yyvsp[-1].item,yyvsp[0].item)); }
- break;
- case 590:
- #line 2687 "sql_yacc.yy"
- { yyval.item= new Item_func_regex(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 591:
- #line 2689 "sql_yacc.yy"
- { yyval.item= new Item_func_not(new Item_func_regex(yyvsp[-3].item,yyvsp[0].item)); }
- break;
- case 592:
- #line 2690 "sql_yacc.yy"
- { yyval.item= new Item_func_isnull(yyvsp[-2].item); }
- break;
- case 593:
- #line 2691 "sql_yacc.yy"
- { yyval.item= new Item_func_isnotnull(yyvsp[-3].item); }
- break;
- case 594:
- #line 2692 "sql_yacc.yy"
- { yyval.item= new Item_func_equal(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 595:
- #line 2693 "sql_yacc.yy"
- { yyval.item= (*yyvsp[-1].boolfunc2creator)(0)->create(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 596:
- #line 2695 "sql_yacc.yy"
- {
- all_any_subquery_creator(yyvsp[-3].item, yyvsp[-2].boolfunc2creator, yyvsp[-1].num, yyvsp[0].select_lex);
- }
- break;
- case 597:
- #line 2698 "sql_yacc.yy"
- { yyval.item= new Item_func_shift_left(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 598:
- #line 2699 "sql_yacc.yy"
- { yyval.item= new Item_func_shift_right(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 599:
- #line 2700 "sql_yacc.yy"
- { yyval.item= new Item_func_plus(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 600:
- #line 2701 "sql_yacc.yy"
- { yyval.item= new Item_func_minus(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 601:
- #line 2702 "sql_yacc.yy"
- { yyval.item= new Item_func_mul(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 602:
- #line 2703 "sql_yacc.yy"
- { yyval.item= new Item_func_div(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 603:
- #line 2704 "sql_yacc.yy"
- { yyval.item= new Item_func_int_div(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 604:
- #line 2705 "sql_yacc.yy"
- { yyval.item= new Item_func_bit_or(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 605:
- #line 2706 "sql_yacc.yy"
- { yyval.item= new Item_func_bit_xor(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 606:
- #line 2707 "sql_yacc.yy"
- { yyval.item= new Item_func_bit_and(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 607:
- #line 2708 "sql_yacc.yy"
- { yyval.item= new Item_func_mod(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 608:
- #line 2709 "sql_yacc.yy"
- { yyval.item= new Item_func_mod(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 609:
- #line 2711 "sql_yacc.yy"
- { yyval.item= new Item_date_add_interval(yyvsp[-3].item,yyvsp[-1].item,yyvsp[0].interval,0); }
- break;
- case 610:
- #line 2713 "sql_yacc.yy"
- { yyval.item= new Item_date_add_interval(yyvsp[-3].item,yyvsp[-1].item,yyvsp[0].interval,1); }
- break;
- case 612:
- #line 2719 "sql_yacc.yy"
- { yyvsp[-1].item_list->push_front(yyvsp[-4].item); yyval.item= new Item_func_in(*yyvsp[-1].item_list); }
- break;
- case 613:
- #line 2721 "sql_yacc.yy"
- {
- yyvsp[-1].item_list->push_front(yyvsp[-5].item);
- Item_func_in *item= new Item_func_in(*yyvsp[-1].item_list);
- item->negate();
- yyval.item= item;
- }
- break;
- case 614:
- #line 2728 "sql_yacc.yy"
- { yyval.item= new Item_in_subselect(yyvsp[-2].item, yyvsp[0].select_lex); }
- break;
- case 615:
- #line 2730 "sql_yacc.yy"
- {
- yyval.item= new Item_func_not(new Item_in_subselect(yyvsp[-3].item, yyvsp[0].select_lex));
- }
- break;
- case 616:
- #line 2734 "sql_yacc.yy"
- { yyval.item= new Item_func_between(yyvsp[-4].item,yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 617:
- #line 2736 "sql_yacc.yy"
- {
- Item_func_between *item= new Item_func_between(yyvsp[-5].item,yyvsp[-2].item,yyvsp[0].item);
- item->negate();
- yyval.item= item;
- }
- break;
- case 618:
- #line 2741 "sql_yacc.yy"
- { yyval.item= or_or_concat(YYTHD, yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 619:
- #line 2742 "sql_yacc.yy"
- { yyval.item= new Item_cond_or(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 620:
- #line 2743 "sql_yacc.yy"
- { yyval.item= new Item_cond_xor(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 621:
- #line 2745 "sql_yacc.yy"
- {
- yyval.item= new Item_func_eq(new Item_func_soundex(yyvsp[-3].item),
- new Item_func_soundex(yyvsp[0].item));
- }
- break;
- case 622:
- #line 2750 "sql_yacc.yy"
- { yyval.item= new Item_func_like(yyvsp[-3].item,yyvsp[-1].item,yyvsp[0].item); }
- break;
- case 623:
- #line 2752 "sql_yacc.yy"
- { yyval.item= new Item_func_not(new Item_func_like(yyvsp[-4].item,yyvsp[-1].item,yyvsp[0].item)); }
- break;
- case 624:
- #line 2753 "sql_yacc.yy"
- { yyval.item= new Item_func_regex(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 625:
- #line 2755 "sql_yacc.yy"
- { yyval.item= new Item_func_not(new Item_func_regex(yyvsp[-3].item,yyvsp[0].item)); }
- break;
- case 626:
- #line 2756 "sql_yacc.yy"
- { yyval.item= new Item_func_isnull(yyvsp[-2].item); }
- break;
- case 627:
- #line 2757 "sql_yacc.yy"
- { yyval.item= new Item_func_isnotnull(yyvsp[-3].item); }
- break;
- case 628:
- #line 2758 "sql_yacc.yy"
- { yyval.item= new Item_func_equal(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 629:
- #line 2759 "sql_yacc.yy"
- { yyval.item= (*yyvsp[-1].boolfunc2creator)(0)->create(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 630:
- #line 2761 "sql_yacc.yy"
- {
- all_any_subquery_creator(yyvsp[-3].item, yyvsp[-2].boolfunc2creator, yyvsp[-1].num, yyvsp[0].select_lex);
- }
- break;
- case 631:
- #line 2764 "sql_yacc.yy"
- { yyval.item= new Item_func_shift_left(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 632:
- #line 2765 "sql_yacc.yy"
- { yyval.item= new Item_func_shift_right(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 633:
- #line 2766 "sql_yacc.yy"
- { yyval.item= new Item_func_plus(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 634:
- #line 2767 "sql_yacc.yy"
- { yyval.item= new Item_func_minus(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 635:
- #line 2768 "sql_yacc.yy"
- { yyval.item= new Item_func_mul(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 636:
- #line 2769 "sql_yacc.yy"
- { yyval.item= new Item_func_div(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 637:
- #line 2770 "sql_yacc.yy"
- { yyval.item= new Item_func_int_div(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 638:
- #line 2771 "sql_yacc.yy"
- { yyval.item= new Item_func_bit_or(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 639:
- #line 2772 "sql_yacc.yy"
- { yyval.item= new Item_func_bit_xor(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 640:
- #line 2773 "sql_yacc.yy"
- { yyval.item= new Item_func_bit_and(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 641:
- #line 2774 "sql_yacc.yy"
- { yyval.item= new Item_func_mod(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 642:
- #line 2775 "sql_yacc.yy"
- { yyval.item= new Item_func_mod(yyvsp[-2].item,yyvsp[0].item); }
- break;
- case 643:
- #line 2777 "sql_yacc.yy"
- { yyval.item= new Item_date_add_interval(yyvsp[-3].item,yyvsp[-1].item,yyvsp[0].interval,0); }
- break;
- case 644:
- #line 2779 "sql_yacc.yy"
- { yyval.item= new Item_date_add_interval(yyvsp[-3].item,yyvsp[-1].item,yyvsp[0].interval,1); }
- break;
- case 646:
- #line 2783 "sql_yacc.yy"
- { yyval.item=yyvsp[0].item; }
- break;
- case 648:
- #line 2789 "sql_yacc.yy"
- {
- yyval.item= new Item_func_set_collation(yyvsp[-2].item,
- new Item_string(yyvsp[0].lex_str.str,
- yyvsp[0].lex_str.length,
- YYTHD->charset()));
- }
- break;
- case 651:
- #line 2798 "sql_yacc.yy"
- {
- yyval.item= new Item_func_set_user_var(yyvsp[-2].lex_str,yyvsp[0].item);
- Lex->uncacheable(UNCACHEABLE_RAND);
- }
- break;
- case 652:
- #line 2803 "sql_yacc.yy"
- {
- yyval.item= new Item_func_get_user_var(yyvsp[0].lex_str);
- Lex->uncacheable(UNCACHEABLE_RAND);
- }
- break;
- case 653:
- #line 2808 "sql_yacc.yy"
- {
- if (yyvsp[-1].lex_str.str && yyvsp[0].lex_str.str && check_reserved_words(&yyvsp[-1].lex_str))
- {
- yyerror(ER(ER_SYNTAX_ERROR));
- YYABORT;
- }
- if (!(yyval.item= get_system_var(YYTHD, (enum_var_type) yyvsp[-2].num, yyvsp[-1].lex_str, yyvsp[0].lex_str)))
- YYABORT;
- }
- break;
- case 655:
- #line 2819 "sql_yacc.yy"
- { yyval.item= yyvsp[0].item; }
- break;
- case 656:
- #line 2820 "sql_yacc.yy"
- { yyval.item= new Item_func_neg(yyvsp[0].item); }
- break;
- case 657:
- #line 2821 "sql_yacc.yy"
- { yyval.item= new Item_func_bit_neg(yyvsp[0].item); }
- break;
- case 658:
- #line 2823 "sql_yacc.yy"
- {
- yyval.item= negate_expression(YYTHD, yyvsp[0].item);
- }
- break;
- case 659:
- #line 2827 "sql_yacc.yy"
- {
- yyval.item= negate_expression(YYTHD, yyvsp[0].item);
- }
- break;
- case 660:
- #line 2830 "sql_yacc.yy"
- { yyval.item= yyvsp[-1].item; }
- break;
- case 661:
- #line 2832 "sql_yacc.yy"
- {
- yyvsp[-1].item_list->push_front(yyvsp[-3].item);
- yyval.item= new Item_row(*yyvsp[-1].item_list);
- }
- break;
- case 662:
- #line 2837 "sql_yacc.yy"
- {
- yyvsp[-1].item_list->push_front(yyvsp[-3].item);
- yyval.item= new Item_row(*yyvsp[-1].item_list);
- }
- break;
- case 663:
- #line 2841 "sql_yacc.yy"
- { yyval.item= yyvsp[0].item; }
- break;
- case 664:
- #line 2842 "sql_yacc.yy"
- { yyval.item= yyvsp[0].item; }
- break;
- case 665:
- #line 2843 "sql_yacc.yy"
- { yyval.item= yyvsp[-1].item; }
- break;
- case 666:
- #line 2845 "sql_yacc.yy"
- { yyvsp[-5].item_list->push_front(yyvsp[-2].item);
- Select->add_ftfunc_to_list((Item_func_match*)
- (yyval.item=new Item_func_match(*yyvsp[-5].item_list,yyvsp[-1].num))); }
- break;
- case 667:
- #line 2848 "sql_yacc.yy"
- { yyval.item= new Item_func_ascii(yyvsp[-1].item); }
- break;
- case 668:
- #line 2850 "sql_yacc.yy"
- {
- yyval.item= create_func_cast(yyvsp[0].item, ITEM_CAST_CHAR, -1, &my_charset_bin);
- }
- break;
- case 669:
- #line 2854 "sql_yacc.yy"
- {
- yyval.item= create_func_cast(yyvsp[-3].item, yyvsp[-1].cast_type,
- Lex->length ? atoi(Lex->length) : -1,
- Lex->charset);
- }
- break;
- case 670:
- #line 2860 "sql_yacc.yy"
- { yyval.item= new Item_func_case(* yyvsp[-2].item_list, yyvsp[-4].item, yyvsp[-1].item ); }
- break;
- case 671:
- #line 2862 "sql_yacc.yy"
- {
- yyval.item= create_func_cast(yyvsp[-3].item, yyvsp[-1].cast_type,
- Lex->length ? atoi(Lex->length) : -1,
- Lex->charset);
- }
- break;
- case 672:
- #line 2868 "sql_yacc.yy"
- { yyval.item= new Item_func_conv_charset(yyvsp[-3].item,yyvsp[-1].charset); }
- break;
- case 673:
- #line 2870 "sql_yacc.yy"
- { yyval.item= new Item_default_value(yyvsp[-1].item); }
- break;
- case 674:
- #line 2872 "sql_yacc.yy"
- { yyval.item= new Item_insert_value(yyvsp[-1].item); }
- break;
- case 675:
- #line 2874 "sql_yacc.yy"
- {
- if (!yyvsp[-2].symbol.symbol->create_func)
- {
- net_printf(Lex->thd, ER_FEATURE_DISABLED,
- yyvsp[-2].symbol.symbol->group->name,
- yyvsp[-2].symbol.symbol->group->needed_define);
- YYABORT;
- }
- yyval.item= ((Item*(*)(void))(yyvsp[-2].symbol.symbol->create_func))();
- }
- break;
- case 676:
- #line 2885 "sql_yacc.yy"
- {
- if (!yyvsp[-3].symbol.symbol->create_func)
- {
- net_printf(Lex->thd, ER_FEATURE_DISABLED,
- yyvsp[-3].symbol.symbol->group->name,
- yyvsp[-3].symbol.symbol->group->needed_define);
- YYABORT;
- }
- yyval.item= ((Item*(*)(Item*))(yyvsp[-3].symbol.symbol->create_func))(yyvsp[-1].item);
- }
- break;
- case 677:
- #line 2896 "sql_yacc.yy"
- {
- if (!yyvsp[-5].symbol.symbol->create_func)
- {
- net_printf(Lex->thd, ER_FEATURE_DISABLED,
- yyvsp[-5].symbol.symbol->group->name,
- yyvsp[-5].symbol.symbol->group->needed_define);
- YYABORT;
- }
- yyval.item= ((Item*(*)(Item*,Item*))(yyvsp[-5].symbol.symbol->create_func))(yyvsp[-3].item,yyvsp[-1].item);
- }
- break;
- case 678:
- #line 2907 "sql_yacc.yy"
- {
- if (!yyvsp[-7].symbol.symbol->create_func)
- {
- net_printf(Lex->thd, ER_FEATURE_DISABLED,
- yyvsp[-7].symbol.symbol->group->name,
- yyvsp[-7].symbol.symbol->group->needed_define);
- YYABORT;
- }
- yyval.item= ((Item*(*)(Item*,Item*,Item*))(yyvsp[-7].symbol.symbol->create_func))(yyvsp[-5].item,yyvsp[-3].item,yyvsp[-1].item);
- }
- break;
- case 679:
- #line 2918 "sql_yacc.yy"
- { yyval.item= new Item_date_add_interval(yyvsp[-3].item, yyvsp[-1].item, INTERVAL_DAY, 0);}
- break;
- case 680:
- #line 2920 "sql_yacc.yy"
- { yyval.item= new Item_date_add_interval(yyvsp[-5].item, yyvsp[-2].item, yyvsp[-1].interval, 0); }
- break;
- case 681:
- #line 2922 "sql_yacc.yy"
- { yyval.item= new Item_func_atan(yyvsp[-1].item); }
- break;
- case 682:
- #line 2924 "sql_yacc.yy"
- { yyval.item= new Item_func_atan(yyvsp[-3].item,yyvsp[-1].item); }
- break;
- case 683:
- #line 2926 "sql_yacc.yy"
- { yyval.item= new Item_func_char(*yyvsp[-1].item_list); }
- break;
- case 684:
- #line 2928 "sql_yacc.yy"
- { yyval.item= new Item_func_char(*yyvsp[-3].item_list, yyvsp[-1].charset); }
- break;
- case 685:
- #line 2930 "sql_yacc.yy"
- { yyval.item= new Item_func_charset(yyvsp[-1].item); }
- break;
- case 686:
- #line 2932 "sql_yacc.yy"
- { yyval.item= new Item_func_coalesce(* yyvsp[-1].item_list); }
- break;
- case 687:
- #line 2934 "sql_yacc.yy"
- { yyval.item= new Item_func_collation(yyvsp[-1].item); }
- break;
- case 688:
- #line 2936 "sql_yacc.yy"
- { yyval.item= new Item_func_concat(* yyvsp[-1].item_list); }
- break;
- case 689:
- #line 2938 "sql_yacc.yy"
- { yyvsp[-1].item_list->push_front(yyvsp[-3].item); yyval.item= new Item_func_concat_ws(*yyvsp[-1].item_list); }
- break;
- case 690:
- #line 2940 "sql_yacc.yy"
- {
- Lex->time_zone_tables_used= &fake_time_zone_tables_list;
- yyval.item= new Item_func_convert_tz(yyvsp[-5].item, yyvsp[-3].item, yyvsp[-1].item);
- }
- break;
- case 691:
- #line 2945 "sql_yacc.yy"
- { yyval.item= new Item_func_curdate_local(); Lex->safe_to_cache_query=0; }
- break;
- case 692:
- #line 2947 "sql_yacc.yy"
- { yyval.item= new Item_func_curtime_local(); Lex->safe_to_cache_query=0; }
- break;
- case 693:
- #line 2949 "sql_yacc.yy"
- {
- yyval.item= new Item_func_curtime_local(yyvsp[-1].item);
- Lex->safe_to_cache_query=0;
- }
- break;
- case 694:
- #line 2954 "sql_yacc.yy"
- { yyval.item= create_func_current_user(); }
- break;
- case 695:
- #line 2956 "sql_yacc.yy"
- { yyval.item= new Item_date_add_interval(yyvsp[-4].item,yyvsp[-2].item,yyvsp[-1].interval,0); }
- break;
- case 696:
- #line 2958 "sql_yacc.yy"
- { yyval.item= new Item_date_add_interval(yyvsp[-4].item,yyvsp[-2].item,yyvsp[-1].interval,1); }
- break;
- case 697:
- #line 2960 "sql_yacc.yy"
- {
- yyval.item= new Item_func_database();
- Lex->safe_to_cache_query=0;
- }
- break;
- case 698:
- #line 2965 "sql_yacc.yy"
- { yyval.item= new Item_date_typecast(yyvsp[-1].item); }
- break;
- case 699:
- #line 2967 "sql_yacc.yy"
- { yyval.item= new Item_func_dayofmonth(yyvsp[-1].item); }
- break;
- case 700:
- #line 2969 "sql_yacc.yy"
- { yyvsp[-1].item_list->push_front(yyvsp[-3].item); yyval.item= new Item_func_elt(*yyvsp[-1].item_list); }
- break;
- case 701:
- #line 2971 "sql_yacc.yy"
- { yyval.item= new Item_func_make_set(yyvsp[-3].item, *yyvsp[-1].item_list); }
- break;
- case 702:
- #line 2973 "sql_yacc.yy"
- {
- yyval.item= new Item_func_encrypt(yyvsp[-1].item);
- Lex->uncacheable(UNCACHEABLE_RAND);
- }
- break;
- case 703:
- #line 2977 "sql_yacc.yy"
- { yyval.item= new Item_func_encrypt(yyvsp[-3].item,yyvsp[-1].item); }
- break;
- case 704:
- #line 2979 "sql_yacc.yy"
- { yyval.item= new Item_func_decode(yyvsp[-3].item,yyvsp[-1].lex_str.str); }
- break;
- case 705:
- #line 2981 "sql_yacc.yy"
- { yyval.item= new Item_func_encode(yyvsp[-3].item,yyvsp[-1].lex_str.str); }
- break;
- case 706:
- #line 2983 "sql_yacc.yy"
- { yyval.item= new Item_func_des_decrypt(yyvsp[-1].item); }
- break;
- case 707:
- #line 2985 "sql_yacc.yy"
- { yyval.item= new Item_func_des_decrypt(yyvsp[-3].item,yyvsp[-1].item); }
- break;
- case 708:
- #line 2987 "sql_yacc.yy"
- { yyval.item= new Item_func_des_encrypt(yyvsp[-1].item); }
- break;
- case 709:
- #line 2989 "sql_yacc.yy"
- { yyval.item= new Item_func_des_encrypt(yyvsp[-3].item,yyvsp[-1].item); }
- break;
- case 710:
- #line 2991 "sql_yacc.yy"
- { yyval.item= new Item_func_export_set(yyvsp[-5].item, yyvsp[-3].item, yyvsp[-1].item); }
- break;
- case 711:
- #line 2993 "sql_yacc.yy"
- { yyval.item= new Item_func_export_set(yyvsp[-7].item, yyvsp[-5].item, yyvsp[-3].item, yyvsp[-1].item); }
- break;
- case 712:
- #line 2995 "sql_yacc.yy"
- { yyval.item= new Item_func_export_set(yyvsp[-9].item, yyvsp[-7].item, yyvsp[-5].item, yyvsp[-3].item, yyvsp[-1].item); }
- break;
- case 713:
- #line 2997 "sql_yacc.yy"
- { yyval.item= new Item_func_format(yyvsp[-3].item,atoi(yyvsp[-1].lex_str.str)); }
- break;
- case 714:
- #line 2999 "sql_yacc.yy"
- { yyval.item= new Item_func_from_unixtime(yyvsp[-1].item); }
- break;
- case 715:
- #line 3001 "sql_yacc.yy"
- {
- yyval.item= new Item_func_date_format (new Item_func_from_unixtime(yyvsp[-3].item),yyvsp[-1].item,0);
- }
- break;
- case 716:
- #line 3005 "sql_yacc.yy"
- { yyvsp[-1].item_list->push_front(yyvsp[-3].item); yyval.item= new Item_func_field(*yyvsp[-1].item_list); }
- break;
- case 717:
- #line 3007 "sql_yacc.yy"
- {
- #ifdef HAVE_SPATIAL
- yyval.item= yyvsp[0].item;
- #else
- net_printf(Lex->thd, ER_FEATURE_DISABLED,
- sym_group_geom.name, sym_group_geom.needed_define);
- YYABORT;
- #endif
- }
- break;
- case 718:
- #line 3017 "sql_yacc.yy"
- { yyval.item= new Item_func_get_format(yyvsp[-3].date_time_type, yyvsp[-1].item); }
- break;
- case 719:
- #line 3019 "sql_yacc.yy"
- { yyval.item= new Item_func_hour(yyvsp[-1].item); }
- break;
- case 720:
- #line 3021 "sql_yacc.yy"
- { yyval.item= new Item_func_if(yyvsp[-5].item,yyvsp[-3].item,yyvsp[-1].item); }
- break;
- case 721:
- #line 3023 "sql_yacc.yy"
- { yyval.item= new Item_func_insert(yyvsp[-7].item,yyvsp[-5].item,yyvsp[-3].item,yyvsp[-1].item); }
- break;
- case 722:
- #line 3026 "sql_yacc.yy"
- { yyval.item= new Item_date_add_interval(yyvsp[0].item,yyvsp[-3].item,yyvsp[-2].interval,0); }
- break;
- case 723:
- #line 3028 "sql_yacc.yy"
- {
- if (yyvsp[0].item->type() != Item::ROW_ITEM)
- {
- yyerror(ER(ER_SYNTAX_ERROR));
- YYABORT;
- }
- yyval.item= new Item_func_interval((Item_row *)yyvsp[0].item);
- }
- break;
- case 724:
- #line 3037 "sql_yacc.yy"
- {
- yyval.item= new Item_func_last_insert_id();
- Lex->safe_to_cache_query= 0;
- }
- break;
- case 725:
- #line 3042 "sql_yacc.yy"
- {
- yyval.item= new Item_func_last_insert_id(yyvsp[-1].item);
- Lex->safe_to_cache_query= 0;
- }
- break;
- case 726:
- #line 3047 "sql_yacc.yy"
- { yyval.item= new Item_func_left(yyvsp[-3].item,yyvsp[-1].item); }
- break;
- case 727:
- #line 3049 "sql_yacc.yy"
- { yyval.item= new Item_func_locate(yyvsp[-1].item,yyvsp[-3].item); }
- break;
- case 728:
- #line 3051 "sql_yacc.yy"
- { yyval.item= new Item_func_locate(yyvsp[-3].item,yyvsp[-5].item,yyvsp[-1].item); }
- break;
- case 729:
- #line 3053 "sql_yacc.yy"
- { yyvsp[-1].item_list->push_front(yyvsp[-3].item); yyval.item= new Item_func_max(*yyvsp[-1].item_list); }
- break;
- case 730:
- #line 3055 "sql_yacc.yy"
- { yyvsp[-1].item_list->push_front(yyvsp[-3].item); yyval.item= new Item_func_min(*yyvsp[-1].item_list); }
- break;
- case 731:
- #line 3057 "sql_yacc.yy"
- { yyval.item= new Item_func_log(yyvsp[-1].item); }
- break;
- case 732:
- #line 3059 "sql_yacc.yy"
- { yyval.item= new Item_func_log(yyvsp[-3].item, yyvsp[-1].item); }
- break;
- case 733:
- #line 3061 "sql_yacc.yy"
- {
- yyval.item= new Item_master_pos_wait(yyvsp[-3].item, yyvsp[-1].item);
- Lex->safe_to_cache_query=0;
- }
- break;
- case 734:
- #line 3066 "sql_yacc.yy"
- {
- yyval.item= new Item_master_pos_wait(yyvsp[-5].item, yyvsp[-3].item, yyvsp[-1].item);
- Lex->safe_to_cache_query=0;
- }
- break;
- case 735:
- #line 3071 "sql_yacc.yy"
- { yyval.item= new Item_func_microsecond(yyvsp[-1].item); }
- break;
- case 736:
- #line 3073 "sql_yacc.yy"
- { yyval.item= new Item_func_minute(yyvsp[-1].item); }
- break;
- case 737:
- #line 3075 "sql_yacc.yy"
- { yyval.item = new Item_func_mod( yyvsp[-3].item, yyvsp[-1].item); }
- break;
- case 738:
- #line 3077 "sql_yacc.yy"
- { yyval.item= new Item_func_month(yyvsp[-1].item); }
- break;
- case 739:
- #line 3079 "sql_yacc.yy"
- { yyval.item= new Item_func_now_local(); Lex->safe_to_cache_query=0;}
- break;
- case 740:
- #line 3081 "sql_yacc.yy"
- { yyval.item= new Item_func_now_local(yyvsp[-1].item); Lex->safe_to_cache_query=0;}
- break;
- case 741:
- #line 3083 "sql_yacc.yy"
- {
- yyval.item= YYTHD->variables.old_passwords ?
- (Item *) new Item_func_old_password(yyvsp[-1].item) :
- (Item *) new Item_func_password(yyvsp[-1].item);
- }
- break;
- case 742:
- #line 3089 "sql_yacc.yy"
- { yyval.item= new Item_func_old_password(yyvsp[-1].item); }
- break;
- case 743:
- #line 3091 "sql_yacc.yy"
- { yyval.item = new Item_func_locate(yyvsp[-1].item,yyvsp[-3].item); }
- break;
- case 744:
- #line 3093 "sql_yacc.yy"
- { yyval.item= new Item_func_rand(yyvsp[-1].item); Lex->uncacheable(UNCACHEABLE_RAND);}
- break;
- case 745:
- #line 3095 "sql_yacc.yy"
- { yyval.item= new Item_func_rand(); Lex->uncacheable(UNCACHEABLE_RAND);}
- break;
- case 746:
- #line 3097 "sql_yacc.yy"
- { yyval.item= new Item_func_replace(yyvsp[-5].item,yyvsp[-3].item,yyvsp[-1].item); }
- break;
- case 747:
- #line 3099 "sql_yacc.yy"
- { yyval.item= new Item_func_right(yyvsp[-3].item,yyvsp[-1].item); }
- break;
- case 748:
- #line 3101 "sql_yacc.yy"
- { yyval.item= new Item_func_round(yyvsp[-1].item, new Item_int((char*)"0",0,1),0); }
- break;
- case 749:
- #line 3102 "sql_yacc.yy"
- { yyval.item= new Item_func_round(yyvsp[-3].item,yyvsp[-1].item,0); }
- break;
- case 750:
- #line 3104 "sql_yacc.yy"
- { yyval.item= new Item_date_add_interval(yyvsp[-3].item, yyvsp[-1].item, INTERVAL_DAY, 1);}
- break;
- case 751:
- #line 3106 "sql_yacc.yy"
- { yyval.item= new Item_date_add_interval(yyvsp[-5].item, yyvsp[-2].item, yyvsp[-1].interval, 1); }
- break;
- case 752:
- #line 3108 "sql_yacc.yy"
- { yyval.item= new Item_func_second(yyvsp[-1].item); }
- break;
- case 753:
- #line 3110 "sql_yacc.yy"
- { yyval.item= new Item_func_substr(yyvsp[-5].item,yyvsp[-3].item,yyvsp[-1].item); }
- break;
- case 754:
- #line 3112 "sql_yacc.yy"
- { yyval.item= new Item_func_substr(yyvsp[-3].item,yyvsp[-1].item); }
- break;
- case 755:
- #line 3114 "sql_yacc.yy"
- { yyval.item= new Item_func_substr(yyvsp[-5].item,yyvsp[-3].item,yyvsp[-1].item); }
- break;
- case 756:
- #line 3116 "sql_yacc.yy"
- { yyval.item= new Item_func_substr(yyvsp[-3].item,yyvsp[-1].item); }
- break;
- case 757:
- #line 3118 "sql_yacc.yy"
- { yyval.item= new Item_func_substr_index(yyvsp[-5].item,yyvsp[-3].item,yyvsp[-1].item); }
- break;
- case 758:
- #line 3120 "sql_yacc.yy"
- { yyval.item= new Item_time_typecast(yyvsp[-1].item); }
- break;
- case 759:
- #line 3122 "sql_yacc.yy"
- { yyval.item= new Item_datetime_typecast(yyvsp[-1].item); }
- break;
- case 760:
- #line 3124 "sql_yacc.yy"
- { yyval.item= new Item_func_add_time(yyvsp[-3].item, yyvsp[-1].item, 1, 0); }
- break;
- case 761:
- #line 3126 "sql_yacc.yy"
- { yyval.item= new Item_func_trim(yyvsp[-1].item); }
- break;
- case 762:
- #line 3128 "sql_yacc.yy"
- { yyval.item= new Item_func_ltrim(yyvsp[-1].item,yyvsp[-3].item); }
- break;
- case 763:
- #line 3130 "sql_yacc.yy"
- { yyval.item= new Item_func_rtrim(yyvsp[-1].item,yyvsp[-3].item); }
- break;
- case 764:
- #line 3132 "sql_yacc.yy"
- { yyval.item= new Item_func_trim(yyvsp[-1].item,yyvsp[-3].item); }
- break;
- case 765:
- #line 3134 "sql_yacc.yy"
- { yyval.item= new Item_func_ltrim(yyvsp[-1].item); }
- break;
- case 766:
- #line 3136 "sql_yacc.yy"
- { yyval.item= new Item_func_rtrim(yyvsp[-1].item); }
- break;
- case 767:
- #line 3138 "sql_yacc.yy"
- { yyval.item= new Item_func_trim(yyvsp[-1].item); }
- break;
- case 768:
- #line 3140 "sql_yacc.yy"
- { yyval.item= new Item_func_trim(yyvsp[-1].item,yyvsp[-3].item); }
- break;
- case 769:
- #line 3142 "sql_yacc.yy"
- { yyval.item= new Item_func_round(yyvsp[-3].item,yyvsp[-1].item,1); }
- break;
- case 770:
- #line 3144 "sql_yacc.yy"
- {
- if (yyvsp[-1].item_list != NULL)
- yyval.item = new Item_sum_udf_str(yyvsp[-3].udf, *yyvsp[-1].item_list);
- else
- yyval.item = new Item_sum_udf_str(yyvsp[-3].udf);
- }
- break;
- case 771:
- #line 3151 "sql_yacc.yy"
- {
- if (yyvsp[-1].item_list != NULL)
- yyval.item = new Item_sum_udf_float(yyvsp[-3].udf, *yyvsp[-1].item_list);
- else
- yyval.item = new Item_sum_udf_float(yyvsp[-3].udf);
- }
- break;
- case 772:
- #line 3158 "sql_yacc.yy"
- {
- if (yyvsp[-1].item_list != NULL)
- yyval.item = new Item_sum_udf_int(yyvsp[-3].udf, *yyvsp[-1].item_list);
- else
- yyval.item = new Item_sum_udf_int(yyvsp[-3].udf);
- }
- break;
- case 773:
- #line 3165 "sql_yacc.yy"
- {
- if (yyvsp[-1].item_list != NULL)
- yyval.item = new Item_func_udf_str(yyvsp[-3].udf, *yyvsp[-1].item_list);
- else
- yyval.item = new Item_func_udf_str(yyvsp[-3].udf);
- }
- break;