| ... | ... | @@ -2040,6 +2040,12 @@ These filters are added to the C<out> filters, set by C<apply_filter()>. | 
| 2040 | 2040 | C<filter> option is also available | 
| 2041 | 2041 | by C<insert()>, C<update()>, C<delete()>, C<select()> | 
| 2042 | 2042 |  | 
| 2043 | +=item C<query> | |
| 2044 | + | |
| 2045 | + query => 1 | |
| 2046 | + | |
| 2047 | +C<execute> method return L<DBIx::Custom::Query> object, not executing SQL. | |
| 2048 | + | |
| 2043 | 2049 | =item C<type> | 
| 2044 | 2050 |  | 
| 2045 | 2051 | Specify database data type. | 
| ... | ... | @@ -2066,79 +2072,49 @@ Trun type rule off. | 
| 2066 | 2072 |  | 
| 2067 | 2073 |      $dbi->delete(table => 'book', where => {title => 'Perl'}); | 
| 2068 | 2074 |  | 
| 2069 | -Delete statement. | |
| 2075 | +Execute delete statement. | |
| 2070 | 2076 |  | 
| 2071 | -The following opitons are currently available. | |
| 2077 | +The following opitons are available. | |
| 2072 | 2078 |  | 
| 2073 | 2079 | =over 4 | 
| 2074 | 2080 |  | 
| 2075 | -=item C<table> | |
| 2076 | - | |
| 2077 | -Table name. | |
| 2078 | - | |
| 2079 | - $dbi->delete(table => 'book'); | |
| 2080 | - | |
| 2081 | -=item C<where> | |
| 2082 | - | |
| 2083 | -Where clause. This is hash reference or L<DBIx::Custom::Where> object | |
| 2084 | -or array refrence, which contains where clause and paramter. | |
| 2085 | - | |
| 2086 | - # Hash reference | |
| 2087 | -    $dbi->delete(where => {title => 'Perl'}); | |
| 2088 | - | |
| 2089 | - # DBIx::Custom::Where object | |
| 2090 | - my $where = $dbi->where( | |
| 2091 | - clause => ['and', 'author = :author', 'title like :title'], | |
| 2092 | -        param  => {author => 'Ken', title => '%Perl%'} | |
| 2093 | - ); | |
| 2094 | - $dbi->delete(where => $where); | |
| 2095 | - | |
| 2096 | - # String(with where_param option) | |
| 2097 | - $dbi->delete( | |
| 2098 | - where => 'title like :title', | |
| 2099 | -        where_param => {title => '%Perl%'} | |
| 2100 | - ); | |
| 2101 | - | |
| 2102 | 2081 | =item C<append> | 
| 2103 | 2082 |  | 
| 2104 | -Append statement to last of SQL. This is string. | |
| 2105 | - | |
| 2106 | - $dbi->delete(append => 'order by title'); | |
| 2083 | +Same as C<select> method's C<append> option. | |
| 2107 | 2084 |  | 
| 2108 | 2085 | =item C<filter> | 
| 2109 | 2086 |  | 
| 2110 | 2087 | Same as C<execute> method's C<filter> option. | 
| 2111 | 2088 |  | 
| 2112 | -=item C<query> | |
| 2089 | +=item C<id> | |
| 2113 | 2090 |  | 
| 2114 | -Get L<DBIx::Custom::Query> object instead of executing SQL. | |
| 2115 | -This is true or false value. | |
| 2091 | + id => 4 | |
| 2092 | + id => [4, 5] | |
| 2116 | 2093 |  | 
| 2117 | - my $query = $dbi->delete(query => 1); | |
| 2094 | +ID corresponding to C<primary_key>. | |
| 2095 | +You can delete rows by C<id> and C<primary_key>. | |
| 2118 | 2096 |  | 
| 2119 | -You can check SQL. | |
| 2097 | + $dbi->delete( | |
| 2098 | + parimary_key => ['id1', 'id2'], | |
| 2099 | + id => [4, 5], | |
| 2100 | + table => 'book', | |
| 2101 | + ); | |
| 2120 | 2102 |  | 
| 2121 | - my $sql = $query->sql; | |
| 2103 | +The above is same as the followin one. | |
| 2122 | 2104 |  | 
| 2123 | -=item C<id> | |
| 2105 | +    $dbi->delete(where => {id1 => 4, id2 => 5}, table => 'book'); | |
| 2124 | 2106 |  | 
| 2125 | -Delete using primary_key. | |
| 2107 | +=item C<query> | |
| 2126 | 2108 |  | 
| 2127 | - $dbi->delete( | |
| 2128 | - primary_key => 'id', | |
| 2129 | - id => 4, | |
| 2130 | - ); | |
| 2109 | +Same as C<execute> method's C<query> option. | |
| 2131 | 2110 |  | 
| 2132 | - $dbi->delete( | |
| 2133 | - primary_key => ['id1', 'id2'], | |
| 2134 | - id => [4, 5], | |
| 2135 | - ); | |
| 2111 | +=item C<table> | |
| 2136 | 2112 |  | 
| 2137 | -The above is same as the followin ones. | |
| 2113 | + table => 'book' | |
| 2138 | 2114 |  | 
| 2139 | -    $dbi->delete(where => {id => 4}); | |
| 2115 | +=item C<where> | |
| 2140 | 2116 |  | 
| 2141 | -    $dbi->delete(where => {id1 => 4, id2 => 5}); | |
| 2117 | +Same as C<select> method's C<where> option. | |
| 2142 | 2118 |  | 
| 2143 | 2119 | =item C<primary_key> | 
| 2144 | 2120 |  | 
| ... | ... | @@ -2158,7 +2134,7 @@ Same as C<execute> method's C<type_rule_off> option. | 
| 2158 | 2134 |  | 
| 2159 | 2135 | $dbi->delete_all(table => $table); | 
| 2160 | 2136 |  | 
| 2161 | -Delete statement to delete all rows. | |
| 2137 | +Execute delete statement for all rows. | |
| 2162 | 2138 | Options is same as C<delete()>. | 
| 2163 | 2139 |  | 
| 2164 | 2140 | =head2 C<insert> | 
| ... | ... | @@ -2179,52 +2155,34 @@ Same as C<select> method's C<append> option. | 
| 2179 | 2155 |  | 
| 2180 | 2156 | Same as C<execute> method's C<filter> option. | 
| 2181 | 2157 |  | 
| 2182 | -=item C<query> | |
| 2183 | - | |
| 2184 | -Get L<DBIx::Custom::Query> object instead of executing SQL. | |
| 2185 | -This is true or false value. | |
| 2186 | - | |
| 2187 | - my $query = $dbi->insert(query => 1); | |
| 2188 | - | |
| 2189 | -You can check SQL. | |
| 2190 | - | |
| 2191 | - my $sql = $query->sql; | |
| 2192 | - | |
| 2193 | 2158 | =item C<id> | 
| 2194 | 2159 |  | 
| 2195 | -Insert using primary_key. | |
| 2160 | + id => 4 | |
| 2161 | + id => [4, 5] | |
| 2196 | 2162 |  | 
| 2197 | - $dbi->insert( | |
| 2198 | - primary_key => 'id', | |
| 2199 | - id => 4, | |
| 2200 | -        param => {title => 'Perl', author => 'Ken'} | |
| 2201 | - ); | |
| 2163 | +ID corresponding to C<primary_key>. | |
| 2164 | +You can insert a row by C<id> and C<primary_key>. | |
| 2202 | 2165 |  | 
| 2203 | 2166 | $dbi->insert( | 
| 2204 | - primary_key => ['id1', 'id2'], | |
| 2167 | +        {title => 'Perl', author => 'Ken'} | |
| 2168 | + parimary_key => ['id1', 'id2'], | |
| 2205 | 2169 | id => [4, 5], | 
| 2206 | -        param => {title => 'Perl', author => 'Ken'} | |
| 2170 | + table => 'book' | |
| 2207 | 2171 | ); | 
| 2208 | 2172 |  | 
| 2209 | -The above is same as the followin ones. | |
| 2210 | - | |
| 2211 | - $dbi->insert( | |
| 2212 | -        param => {id => 4, title => 'Perl', author => 'Ken'} | |
| 2213 | - ); | |
| 2173 | +The above is same as the followin one. | |
| 2214 | 2174 |  | 
| 2215 | 2175 | $dbi->insert( | 
| 2216 | -        param => {id1 => 4, id2 => 5, title => 'Perl', author => 'Ken'} | |
| 2176 | +        {id1 => 4, id2 => 5, title => 'Perl', author => 'Ken'}, | |
| 2177 | + table => 'book' | |
| 2217 | 2178 | ); | 
| 2218 | 2179 |  | 
| 2219 | 2180 | =item C<primary_key> | 
| 2220 | 2181 |  | 
| 2221 | -See C<id> description. | |
| 2182 | + primary_key => 'id' | |
| 2183 | + primary_key => ['id1', 'id2'] | |
| 2222 | 2184 |  | 
| 2223 | -=item C<table> | |
| 2224 | - | |
| 2225 | -Table name. | |
| 2226 | - | |
| 2227 | - $dbi->insert(table => 'book'); | |
| 2185 | +Primary key. This is used by C<id> option. | |
| 2228 | 2186 |  | 
| 2229 | 2187 | =item C<param> | 
| 2230 | 2188 |  | 
| ... | ... | @@ -2237,13 +2195,23 @@ first argument is received as C<param>. | 
| 2237 | 2195 |  | 
| 2238 | 2196 |      $dbi->insert({title => 'Perl', author => 'Ken'}, table => 'book'); | 
| 2239 | 2197 |  | 
| 2198 | +=item C<query> | |
| 2199 | + | |
| 2200 | +Same as C<execute> method's C<query> option. | |
| 2201 | + | |
| 2202 | +=item C<table> | |
| 2203 | + | |
| 2204 | + table => 'book' | |
| 2205 | + | |
| 2206 | +Table name. | |
| 2207 | + | |
| 2240 | 2208 | =item C<type> | 
| 2241 | 2209 |  | 
| 2242 | 2210 | Same as C<execute> method's C<type> option. | 
| 2243 | 2211 |  | 
| 2244 | 2212 | =item C<type_rule_off> EXPERIMENTAL | 
| 2245 | 2213 |  | 
| 2246 | -Turn type rule off. | |
| 2214 | +Same as C<execute> method's C<type_rule_off> option. | |
| 2247 | 2215 |  | 
| 2248 | 2216 | =back | 
| 2249 | 2217 |  | 
| ... | ... | @@ -2413,92 +2381,99 @@ Filter based on type. | 
| 2413 | 2381 |          where  => {author => 'Ken'}, | 
| 2414 | 2382 | ); | 
| 2415 | 2383 |  | 
| 2416 | -Select statement. | |
| 2384 | +Execute select statement. | |
| 2417 | 2385 |  | 
| 2418 | -The following opitons are currently available. | |
| 2386 | +The following opitons are available. | |
| 2419 | 2387 |  | 
| 2420 | 2388 | =over 4 | 
| 2421 | 2389 |  | 
| 2422 | -=item C<table> | |
| 2423 | - | |
| 2424 | -Table name. | |
| 2390 | +=item C<append> | |
| 2425 | 2391 |  | 
| 2426 | - $dbi->select(table => 'book'); | |
| 2392 | + append => 'order by title' | |
| 2427 | 2393 |  | 
| 2394 | +Append statement to last of SQL. | |
| 2395 | + | |
| 2428 | 2396 | =item C<column> | 
| 2429 | - | |
| 2430 | -Column clause. This is array reference or constant value. | |
| 2431 | - | |
| 2432 | - # Array reference | |
| 2433 | - $dbi->select(column => ['author', 'title']); | |
| 2434 | 2397 |  | 
| 2435 | - # Constant value | |
| 2436 | - $dbi->select(column => 'author'); | |
| 2398 | + column => 'author' | |
| 2399 | + column => ['author', 'title'] | |
| 2400 | + | |
| 2401 | +Column clause. | |
| 2437 | 2402 |  | 
| 2438 | -Default is '*' if C<column> is not specified. | |
| 2403 | +if C<column> is not specified, '*' is set. | |
| 2439 | 2404 |  | 
| 2440 | - # Default | |
| 2441 | - $dbi->select(column => '*'); | |
| 2405 | + column => '*' | |
| 2442 | 2406 |  | 
| 2443 | -You can specify hash reference. This is EXPERIMENTAL. | |
| 2407 | +You can specify hash reference in array reference. This is EXPERIMENTAL. | |
| 2444 | 2408 |  | 
| 2445 | - # Hash reference EXPERIMENTAL | |
| 2446 | - $dbi->select(column => [ | |
| 2409 | + column => [ | |
| 2447 | 2410 |          {book => [qw/author title/]}, | 
| 2448 | 2411 |          {person => [qw/name age/]} | 
| 2449 | - ]); | |
| 2412 | + ] | |
| 2450 | 2413 |  | 
| 2451 | -This is expanded to the following one by C<col> method automatically. | |
| 2414 | +This is expanded to the following one by using C<col> method. | |
| 2452 | 2415 |  | 
| 2453 | 2416 | book.author as "book.author", | 
| 2454 | 2417 | book.title as "book.title", | 
| 2455 | 2418 | person.name as "person.name", | 
| 2456 | 2419 | person.age as "person.age" | 
| 2457 | 2420 |  | 
| 2458 | -You can specify array reference in array refernce. | |
| 2421 | +You can specify array reference in array reference. | |
| 2459 | 2422 |  | 
| 2460 | - $dbi->select(column => [ | |
| 2423 | + column => [ | |
| 2461 | 2424 | ['date(book.register_datetime)', as => 'book.register_date'] | 
| 2462 | - ]); | |
| 2425 | + ]; | |
| 2463 | 2426 |  | 
| 2464 | -These is joined and quoted. | |
| 2427 | +Alias is quoted and joined. | |
| 2465 | 2428 |  | 
| 2466 | 2429 | date(book.register_datetime) as "book.register_date" | 
| 2467 | 2430 |  | 
| 2468 | -=item C<where> | |
| 2431 | +=item C<filter> | |
| 2469 | 2432 |  | 
| 2470 | -Where clause. This is hash reference or L<DBIx::Custom::Where> object, | |
| 2471 | -or array refrence, which contains where clause and paramter. | |
| 2472 | - | |
| 2473 | - # Hash reference | |
| 2474 | -    $dbi->select(where => {author => 'Ken', 'title' => 'Perl'}); | |
| 2475 | - | |
| 2476 | - # DBIx::Custom::Where object | |
| 2477 | - my $where = $dbi->where( | |
| 2478 | - clause => ['and', 'author = :author', 'title like :title'], | |
| 2479 | -        param  => {author => 'Ken', title => '%Perl%'} | |
| 2433 | +Same as C<execute> method's C<filter> option. | |
| 2434 | + | |
| 2435 | +=item C<id> | |
| 2436 | + | |
| 2437 | + id => 4 | |
| 2438 | + id => [4, 5] | |
| 2439 | + | |
| 2440 | +ID corresponding to C<primary_key>. | |
| 2441 | +You can select rows by C<id> and C<primary_key>. | |
| 2442 | + | |
| 2443 | + $dbi->select( | |
| 2444 | + parimary_key => ['id1', 'id2'], | |
| 2445 | + id => [4, 5], | |
| 2446 | + table => 'book' | |
| 2480 | 2447 | ); | 
| 2481 | - $dbi->select(where => $where); | |
| 2482 | 2448 |  | 
| 2483 | - # String(with where_param option) | |
| 2449 | +The above is same as the followin one. | |
| 2450 | + | |
| 2484 | 2451 | $dbi->select( | 
| 2485 | - where => 'title like :title', | |
| 2486 | -        where_param => {title => '%Perl%'} | |
| 2452 | +        where => {id1 => 4, id2 => 5}, | |
| 2453 | + table => 'book' | |
| 2487 | 2454 | ); | 
| 2488 | 2455 |  | 
| 2489 | -=item C<join> | |
| 2456 | +=item C<param> EXPERIMETNAL | |
| 2490 | 2457 |  | 
| 2491 | -Join clause used in need. This is array reference. | |
| 2458 | +    param => {'table2.key3' => 5} | |
| 2492 | 2459 |  | 
| 2493 | - $dbi->select(join => | |
| 2494 | - [ | |
| 2495 | - 'left outer join company on book.company_id = company_id', | |
| 2496 | - 'left outer join location on company.location_id = location.id' | |
| 2497 | - ] | |
| 2498 | - ); | |
| 2460 | +Parameter shown before where clause. | |
| 2461 | + | |
| 2462 | +For example, if you want to contain tag in join clause, | |
| 2463 | +you can pass parameter by C<param> option. | |
| 2499 | 2464 |  | 
| 2500 | -If column cluase or where clause contain table name like "company.name", | |
| 2501 | -needed join clause is used automatically. | |
| 2465 | + join => ['inner join (select * from table2 where table2.key3 = :table2.key3)' . | |
| 2466 | + ' as table2 on table1.key1 = table2.key1'] | |
| 2467 | + | |
| 2468 | +=item C<join> | |
| 2469 | + | |
| 2470 | + join => [ | |
| 2471 | + 'left outer join company on book.company_id = company_id', | |
| 2472 | + 'left outer join location on company.location_id = location.id' | |
| 2473 | + ] | |
| 2474 | + | |
| 2475 | +Join clause. If column cluase or where clause contain table name like "company.name", | |
| 2476 | +join clausees needed when SQL is created is used automatically. | |
| 2502 | 2477 |  | 
| 2503 | 2478 | $dbi->select( | 
| 2504 | 2479 | table => 'book', | 
| ... | ... | @@ -2510,59 +2485,56 @@ needed join clause is used automatically. | 
| 2510 | 2485 | ] | 
| 2511 | 2486 | ); | 
| 2512 | 2487 |  | 
| 2513 | -In above select, the following SQL is created. | |
| 2488 | +In above select, column and where clause contain "company" table, | |
| 2489 | +the following SQL is created | |
| 2514 | 2490 |  | 
| 2515 | 2491 | select company.location_id as company__location_id | 
| 2516 | 2492 | from book | 
| 2517 | 2493 | left outer join company on book.company_id = company.id | 
| 2518 | 2494 | where company.name = Orange | 
| 2519 | 2495 |  | 
| 2520 | -=item C<param> EXPERIMETNAL | |
| 2496 | +=item C<primary_key> | |
| 2521 | 2497 |  | 
| 2522 | -Parameter shown before where clause. | |
| 2523 | - | |
| 2524 | - $dbi->select( | |
| 2525 | - table => 'table1', | |
| 2526 | - column => 'table1.key1 as table1_key1, key2, key3', | |
| 2527 | -        where   => {'table1.key2' => 3}, | |
| 2528 | - join => ['inner join (select * from table2 where table2.key3 = :table2.key3)' . | |
| 2529 | - ' as table2 on table1.key1 = table2.key1'], | |
| 2530 | -        param => {'table2.key3' => 5} | |
| 2531 | - ); | |
| 2498 | + primary_key => 'id' | |
| 2499 | + primary_key => ['id1', 'id2'] | |
| 2532 | 2500 |  | 
| 2533 | -For example, if you want to contain tag in join clause, | |
| 2534 | -you can pass parameter by C<param> option. | |
| 2501 | +Primary key. This is used by C<id> option. | |
| 2535 | 2502 |  | 
| 2536 | -=item C<append> | |
| 2503 | +=item C<query> | |
| 2537 | 2504 |  | 
| 2538 | -Append statement to last of SQL. This is string. | |
| 2505 | +Same as C<execute> method's C<query> option. | |
| 2539 | 2506 |  | 
| 2540 | - $dbi->select(append => 'order by title'); | |
| 2541 | - | |
| 2542 | -=item C<id> | |
| 2507 | +=item C<type> | |
| 2543 | 2508 |  | 
| 2544 | -Select using primary_key. | |
| 2509 | +Same as C<execute> method's C<type> option. | |
| 2545 | 2510 |  | 
| 2546 | - $dbi->select( | |
| 2547 | - primary_key => 'id', | |
| 2548 | - id => 4, | |
| 2549 | - ); | |
| 2511 | +=item C<table> | |
| 2550 | 2512 |  | 
| 2551 | - $dbi->select( | |
| 2552 | - primary_key => ['id1', 'id2'], | |
| 2553 | - id => [4, 5] | |
| 2554 | - ); | |
| 2513 | + table => 'book' | |
| 2555 | 2514 |  | 
| 2556 | -The above is same as the followin ones. | |
| 2515 | +Table name. | |
| 2557 | 2516 |  | 
| 2558 | -    $dbi->insert(where => {id => 4}); | |
| 2517 | +=item C<type_rule_off> EXPERIMENTAL | |
| 2559 | 2518 |  | 
| 2560 | -    $dbi->insert(where => {id1 => 4, id2 => 5}); | |
| 2519 | +Same as C<execute> method's C<type_rule_off> option. | |
| 2561 | 2520 |  | 
| 2562 | -=item C<primary_key> | |
| 2521 | +=item C<where> | |
| 2522 | + | |
| 2523 | + # Hash refrence | |
| 2524 | +    where => {author => 'Ken', 'title' => 'Perl'} | |
| 2525 | + | |
| 2526 | + # DBIx::Custom::Where object | |
| 2527 | + where => $dbi->where( | |
| 2528 | + clause => ['and', 'author = :author', 'title like :title'], | |
| 2529 | +        param  => {author => 'Ken', title => '%Perl%'} | |
| 2530 | + ); | |
| 2563 | 2531 |  | 
| 2564 | -See C<id> option. | |
| 2532 | + # String(with where_param option) | |
| 2533 | + where => 'title like :title', | |
| 2534 | +    where_param => {title => '%Perl%'} | |
| 2565 | 2535 |  | 
| 2536 | +Where clause. | |
| 2537 | + | |
| 2566 | 2538 | =item C<wrap> EXPERIMENTAL | 
| 2567 | 2539 |  | 
| 2568 | 2540 | Wrap statement. This is array reference. | 
| ... | ... | @@ -2571,139 +2543,79 @@ Wrap statement. This is array reference. | 
| 2571 | 2543 |  | 
| 2572 | 2544 | This option is for Oracle and SQL Server paging process. | 
| 2573 | 2545 |  | 
| 2574 | -=item C<filter> | |
| 2575 | - | |
| 2576 | -Same as C<execute> method's C<filter> option. | |
| 2577 | - | |
| 2578 | -=item C<query> | |
| 2579 | - | |
| 2580 | -Get L<DBIx::Custom::Query> object instead of executing SQL. | |
| 2581 | -This is true or false value. | |
| 2582 | - | |
| 2583 | - my $query = $dbi->select(query => 1); | |
| 2584 | - | |
| 2585 | -You can check SQL. | |
| 2586 | - | |
| 2587 | - my $sql = $query->sql; | |
| 2588 | - | |
| 2589 | -=item C<type> | |
| 2590 | - | |
| 2591 | -Same as C<execute> method's C<type> option. | |
| 2592 | - | |
| 2593 | -=item C<type_rule_off> EXPERIMENTAL | |
| 2594 | - | |
| 2595 | -Same as C<execute> method's C<type_rule_off> option. | |
| 2596 | - | |
| 2597 | 2546 | =back | 
| 2598 | 2547 |  | 
| 2599 | 2548 | =head2 C<update> | 
| 2600 | 2549 |  | 
| 2601 | - $dbi->update( | |
| 2602 | - table => 'book', | |
| 2603 | -        param  => {title => 'Perl'}, | |
| 2604 | -        where  => {id => 4} | |
| 2605 | - ); | |
| 2550 | +    $dbi->update({title => 'Perl'}, table  => 'book', where  => {id => 4}); | |
| 2606 | 2551 |  | 
| 2607 | -Update statement. | |
| 2552 | +Execute update statement. | |
| 2608 | 2553 |  | 
| 2609 | -The following opitons are currently available. | |
| 2554 | +The following opitons are available. | |
| 2610 | 2555 |  | 
| 2611 | 2556 | =over 4 | 
| 2612 | 2557 |  | 
| 2613 | -=item C<param> | |
| 2614 | - | |
| 2615 | -Update data. This is hash reference. | |
| 2616 | - | |
| 2617 | -    $dbi->update(param => {title => 'Perl'}); | |
| 2558 | +=item C<append> | |
| 2618 | 2559 |  | 
| 2619 | -If arguments is odd numbers, first argument is received as C<param>. | |
| 2560 | +Same as C<select> method's C<append> option. | |
| 2620 | 2561 |  | 
| 2621 | - $dbi->update( | |
| 2622 | -        {title => 'Perl'}, | |
| 2623 | - table => 'book', | |
| 2624 | -        where => {author => 'Ken'} | |
| 2625 | - ); | |
| 2562 | +=item C<filter> | |
| 2626 | 2563 |  | 
| 2627 | -=item C<table> | |
| 2564 | +Same as C<execute> method's C<filter> option. | |
| 2628 | 2565 |  | 
| 2629 | -Table name. | |
| 2566 | +=item C<id> | |
| 2630 | 2567 |  | 
| 2631 | - $dbi->update(table => 'book'); | |
| 2568 | + id => 4 | |
| 2569 | + id => [4, 5] | |
| 2632 | 2570 |  | 
| 2633 | -=item C<where> | |
| 2571 | +ID corresponding to C<primary_key>. | |
| 2572 | +You can update rows by C<id> and C<primary_key>. | |
| 2634 | 2573 |  | 
| 2635 | -Where clause. This is hash reference or L<DBIx::Custom::Where> object | |
| 2636 | -or array refrence. | |
| 2637 | - | |
| 2638 | - # Hash reference | |
| 2639 | -    $dbi->update(where => {author => 'Ken', 'title' => 'Perl'}); | |
| 2640 | - | |
| 2641 | - # DBIx::Custom::Where object | |
| 2642 | - my $where = $dbi->where( | |
| 2643 | - clause => ['and', 'author = :author', 'title like :title'], | |
| 2644 | -        param  => {author => 'Ken', title => '%Perl%'} | |
| 2645 | - ); | |
| 2646 | - $dbi->update(where => $where); | |
| 2647 | - | |
| 2648 | - # String(with where_param option) | |
| 2649 | 2574 | $dbi->update( | 
| 2650 | -        param => {title => 'Perl'}, | |
| 2651 | - where => 'id = :id', | |
| 2652 | -        where_param => {id => 2} | |
| 2575 | +        {title => 'Perl', author => 'Ken'} | |
| 2576 | + parimary_key => ['id1', 'id2'], | |
| 2577 | + id => [4, 5], | |
| 2578 | + table => 'book' | |
| 2653 | 2579 | ); | 
| 2654 | - | |
| 2655 | -=item C<append> | |
| 2656 | 2580 |  | 
| 2657 | -Append statement to last of SQL. This is string. | |
| 2581 | +The above is same as the followin one. | |
| 2658 | 2582 |  | 
| 2659 | - $dbi->update(append => 'order by title'); | |
| 2660 | - | |
| 2661 | -=item C<filter> | |
| 2583 | + $dbi->update( | |
| 2584 | +        {title => 'Perl', author => 'Ken'} | |
| 2585 | +        where => {id1 => 4, id2 => 5}, | |
| 2586 | + table => 'book' | |
| 2587 | + ); | |
| 2662 | 2588 |  | 
| 2663 | -Same as C<execute> method's C<filter> option. | |
| 2589 | +=item C<param> | |
| 2664 | 2590 |  | 
| 2665 | -=item C<query> | |
| 2591 | +    param => {title => 'Perl'} | |
| 2666 | 2592 |  | 
| 2667 | -Get L<DBIx::Custom::Query> object instead of executing SQL. | |
| 2668 | -This is true or false value. | |
| 2593 | +Update data. | |
| 2669 | 2594 |  | 
| 2670 | - my $query = $dbi->update(query => 1); | |
| 2595 | +If C<update> method's arguments is odd numbers, first argument is received as C<param>. | |
| 2671 | 2596 |  | 
| 2672 | -You can check SQL. | |
| 2597 | +    $dbi->update({title => 'Perl'}, table => 'book', where => {id => 2}); | |
| 2673 | 2598 |  | 
| 2674 | - my $sql = $query->sql; | |
| 2599 | +=item C<primary_key> | |
| 2675 | 2600 |  | 
| 2676 | -=item C<id> | |
| 2601 | + primary_key => 'id' | |
| 2602 | + primary_key => ['id1', 'id2'] | |
| 2677 | 2603 |  | 
| 2678 | -update using primary_key. | |
| 2604 | +Primary key. This is used by C<id> option. | |
| 2679 | 2605 |  | 
| 2680 | - $dbi->update( | |
| 2681 | - primary_key => 'id', | |
| 2682 | - id => 4, | |
| 2683 | -        param => {title => 'Perl', author => 'Ken'} | |
| 2684 | - ); | |
| 2606 | +=item C<query> | |
| 2685 | 2607 |  | 
| 2686 | - $dbi->update( | |
| 2687 | - primary_key => ['id1', 'id2'], | |
| 2688 | - id => [4, 5], | |
| 2689 | -        param => {title => 'Perl', author => 'Ken'} | |
| 2690 | - ); | |
| 2608 | +Same as C<execute> method's C<query> option. | |
| 2691 | 2609 |  | 
| 2692 | -The above is same as the followin ones. | |
| 2610 | +=item C<table> | |
| 2693 | 2611 |  | 
| 2694 | - $dbi->update( | |
| 2695 | -        where => {id => 4} | |
| 2696 | -        param => {title => 'Perl', author => 'Ken'} | |
| 2697 | - ); | |
| 2612 | + table => 'book' | |
| 2698 | 2613 |  | 
| 2699 | - $dbi->update( | |
| 2700 | -        where => {id1 => 4, id2 => 5}, | |
| 2701 | -        param => {title => 'Perl', author => 'Ken'} | |
| 2702 | - ); | |
| 2614 | +Table name. | |
| 2703 | 2615 |  | 
| 2704 | -=item C<primary_key> | |
| 2616 | +=item C<where> | |
| 2705 | 2617 |  | 
| 2706 | -See C<id> option. | |
| 2618 | +Same as C<select> method's C<where> option. | |
| 2707 | 2619 |  | 
| 2708 | 2620 | =item C<type> | 
| 2709 | 2621 |  | 
| ... | ... | @@ -2719,7 +2631,7 @@ Turn type rule off. | 
| 2719 | 2631 |  | 
| 2720 | 2632 |      $dbi->update_all(table => 'book', param => {title => 'Perl'}); | 
| 2721 | 2633 |  | 
| 2722 | -Update statement to update all rows. | |
| 2634 | +Execute update statement for all rows. | |
| 2723 | 2635 | Options is same as C<update()>. | 
| 2724 | 2636 |  | 
| 2725 | 2637 | =head2 C<update_param> |