1005
1001
select_item_list select_item values_list no_braces
1006
1002
opt_limit_clause delete_limit_clause fields opt_values values
1007
1003
opt_precision opt_ignore opt_column
1008
set lock unlock string_list
1009
opt_binary table_lock_list table_lock
1004
set unlock string_list
1010
1006
ref_list opt_match_clause opt_on_update_delete use
1011
1007
opt_delete_options opt_delete_option varchar
1012
1008
opt_outer table_list table_name table_alias_ref_list table_alias_ref
5867
5862
| BINARY { $$=new Item_string("binary", 6, system_charset_info); }
5876
Transactional locks can be taken only if all requested locks
5877
are transactional. Initialize lex->lock_transactional as
5878
TRUE. Any non-transactional lock request turns this to FALSE.
5879
Table specific variables keep track of the locking method
5880
requested for the table. This is used to warn about a
5881
changed locking method later.
5883
Lex->lock_transactional= true;
5888
lex->sql_command= SQLCOM_LOCK_TABLES;
5894
5865
table_or_tables:
5901
| table_lock_list ',' table_lock
5905
table_ident opt_table_alias table_lock_info
5908
if (!(tlist= Select->add_table_to_list(YYSession, $1, $2, 0,
5910
DRIZZLE_YYABORT; /* purecov: inspected */
5911
tlist->lock_timeout= $3.lock_timeout;
5912
/* Store the requested lock method for later warning. */
5913
tlist->lock_transactional= $3.lock_transactional;
5914
/* Compute the resulting lock method for all tables. */
5915
if (!$3.lock_transactional)
5916
Lex->lock_transactional= false;
5923
$$.lock_type= TL_READ_NO_INSERT;
5924
$$.lock_timeout= -1;
5925
$$.lock_transactional= false;
5929
$$.lock_type= TL_WRITE_DEFAULT;
5930
$$.lock_timeout= -1;
5931
$$.lock_transactional= false;
5933
| READ_SYM LOCAL_SYM
5935
$$.lock_type= TL_READ;
5936
$$.lock_timeout= -1;
5937
$$.lock_transactional= false;
5942
We have a timeout resolution of milliseconds. The WAIT argument is in
5943
seconds with decimal fragments for sub-second resolution. E.g. 22.5, 0.015
5945
/* opt_lock_timeout_value: */
5946
/* empty { $$= -1; } */
5947
/* | NUM { $$= (int) (atof($1.str) * 1000.0 + 0.5); } */