Showing 5 changed files with 128 additions and 116 deletions
+4
Changes
... ...
@@ -1,3 +1,7 @@
1
+0.1611
2
+  renamed update tag to update_param
3
+  renamed insert tag to insert_param
4
+  renamed sql_builder to query_builder
1 5
 0.1610
2 6
   added filter_check attribute.
3 7
 0.1609
+96 -88
lib/DBIx/Custom.pm
... ...
@@ -24,7 +24,7 @@ __PACKAGE__->register_filter(
24 24
 );
25 25
 
26 26
 __PACKAGE__->attr(result_class => 'DBIx::Custom::Result');
27
-__PACKAGE__->attr(sql_builder  => sub {DBIx::Custom::QueryBuilder->new});
27
+__PACKAGE__->attr(query_builder  => sub {DBIx::Custom::QueryBuilder->new});
28 28
 
29 29
 __PACKAGE__->attr(cache => 1);
30 30
 __PACKAGE__->attr(cache_method => sub {
... ...
@@ -107,7 +107,7 @@ sub insert {
107 107
     my @insert_keys = keys %$param;
108 108
     
109 109
     # Templte for insert
110
-    my $source = "insert into $table {insert "
110
+    my $source = "insert into $table {insert_param "
111 111
                . join(' ', @insert_keys) . '}';
112 112
     $source .= " $append" if $append;
113 113
     
... ...
@@ -149,7 +149,7 @@ sub update {
149 149
       if !@where_keys && !$allow_update_all;
150 150
     
151 151
     # Update clause
152
-    my $update_clause = '{update ' . join(' ', @update_keys) . '}';
152
+    my $update_clause = '{update_param ' . join(' ', @update_keys) . '}';
153 153
     
154 154
     # Where clause
155 155
     my $where_clause = '';
... ...
@@ -339,7 +339,7 @@ sub create_query {
339 339
     unless ($query) {
340 340
 
341 341
         # Create SQL object
342
-        my $builder = $self->sql_builder;
342
+        my $builder = $self->query_builder;
343 343
         
344 344
         # Create query
345 345
         $query = eval{$builder->build_query($source)};
... ...
@@ -489,7 +489,7 @@ DBIx::Custom - DBI interface, having hash parameter binding and filtering system
489 489
 
490 490
 =cut
491 491
 
492
-our $VERSION = '0.1610';
492
+our $VERSION = '0.1611';
493 493
 
494 494
 =head1 STABILITY
495 495
 
... ...
@@ -501,25 +501,25 @@ Method name and implementations will be changed for a while.
501 501
 Connect to the database.
502 502
     
503 503
     use DBIx::Custom;
504
-    my $dbi = DBIx::Custom->connect(data_source => "dbi:mysql:database=books",
504
+    my $dbi = DBIx::Custom->connect(data_source => "dbi:mysql:database=dbname",
505 505
                                     user => 'ken', password => '!LFKD%$&');
506 506
 
507 507
 Insert, update, and delete
508 508
 
509 509
     # Insert 
510 510
     $dbi->insert(table  => 'books',
511
-                 param  => {title => 'perl', author => 'Ken'},
511
+                 param  => {title => 'Perl', author => 'Ken'},
512 512
                  filter => {title => 'encode_utf8'});
513 513
     
514 514
     # Update 
515 515
     $dbi->update(table  => 'books', 
516
-                 param  => {title => 'aaa', author => 'Ken'}, 
516
+                 param  => {title => 'Perl', author => 'Ken'}, 
517 517
                  where  => {id => 5},
518 518
                  filter => {title => 'encode_utf8'});
519 519
     
520 520
     # Update all
521 521
     $dbi->update_all(table  => 'books',
522
-                     param  => {title => 'aaa'},
522
+                     param  => {title => 'Perl'},
523 523
                      filter => {title => 'encode_utf8'});
524 524
     
525 525
     # Delete
... ...
@@ -595,7 +595,7 @@ Fetch row.
595 595
         
596 596
     }
597 597
     
598
-=head1 DESCRIPTION
598
+=head1 DESCRIPTIONS
599 599
 
600 600
 =head2 1. Features
601 601
 
... ...
@@ -616,33 +616,37 @@ to execute SQL easily.
616 616
 L<DBIx::Custom> respects SQL. SQL is very complex and not beautiful,
617 617
 but de-facto standard,
618 618
 so all people learing database know it.
619
-If you know SQL,
620
-you learn a little thing to do your works, using L<DBIx::Custom>
619
+If you already know SQL,
620
+you learn a little thing to use L<DBIx::Custom>.
621 621
 
622
-=head2 1. Connect to the database
622
+=head2 2. Connect to the database
623 623
 
624 624
 C<connect()> method create a new L<DBIx::Custom>
625 625
 object and connect to the database.
626 626
 
627 627
     use DBIx::Custom;
628
-    my $dbi = DBIx::Custom->connect(data_source => "dbi:mysql:database=books",
628
+    my $dbi = DBIx::Custom->connect(data_source => "dbi:mysql:database=dbname",
629 629
                                     user => 'ken', password => '!LFKD%$&');
630 630
 
631
-If database is SQLite, use L<DBIx::Custom::SQLite>. you connect database easy way.
631
+If database is SQLite, use L<DBIx::Custom::SQLite> instead.
632
+you connect database easily.
632 633
 
633 634
     use DBIx::Custom::SQLite;
634
-    my $dbi = DBIx::Custom->connect(database => 'books');
635
+    my $dbi = DBIx::Custom::SQLite->connect(database => 'dbname');
635 636
     
636 637
 If database is  MySQL, use L<DBIx::Costom::MySQL>.
637 638
 
638 639
     use DBIx::Custom::MySQL;
639
-    my $dbi = DBIx::Custom->connect(database => 'books',
640
-                                    user => 'ken', password => '!LFKD%$&');
640
+    my $dbi = DBIx::Custom::MySQL->connect(
641
+        database => 'dbname',
642
+        user     => 'ken',
643
+        password => '!LFKD%$&'
644
+    );
641 645
 
642
-=head2 2. Suger methods
646
+=head2 3. Suger methods
643 647
 
644 648
 L<DBIx::Custom> has suger methods, such as C<insert()>, C<update()>,
645
-C<delete()> and C<select()>. If you want to do small works,
649
+C<delete()> or C<select()>. If you want to do small works,
646 650
 You don't have to create SQL statements.
647 651
 
648 652
 =head3 insert()
... ...
@@ -650,35 +654,35 @@ You don't have to create SQL statements.
650 654
 Execute insert statement.
651 655
 
652 656
     $dbi->insert(table  => 'books',
653
-                 param  => {title => 'perl', author => 'Ken'});
657
+                 param  => {title => 'Perl', author => 'Ken'});
654 658
 
655 659
 The following SQL is executed.
656 660
 
657 661
     insert into (title, author) values (?, ?);
658 662
 
659
-The values of C<title> and C<author> is embedded into placeholders.
663
+The values of C<title> and C<author> is embedded into the placeholders.
660 664
 
661
-C<append> and C<filter> argument can be specified
662
-to C<insert()> method if you need.
665
+C<append> and C<filter> argument can be specified.
666
+See also "METHODS" section.
663 667
 
664 668
 =head3 update()
665 669
 
666 670
 Execute update statement.
667 671
 
668 672
     $dbi->update(table  => 'books', 
669
-                 param  => {title => 'aaa', author => 'Ken'}, 
673
+                 param  => {title => 'Perl', author => 'Ken'}, 
670 674
                  where  => {id => 5});
671 675
 
672 676
 The following SQL is executed.
673 677
 
674 678
     update books set title = ?, author = ?;
675 679
 
676
-The values of C<title> and C<author> is embedded into placeholders.
680
+The values of C<title> and C<author> is embedded into the placeholders.
677 681
 
678
-C<append> and C<filter> argument can be specified
679
-to C<update()> method if you need.
682
+C<append> and C<filter> argument can be specified.
683
+See also "METHOD" section.
680 684
 
681
-If you want to update all rows, use C<update_all()> method instead.
685
+If you want to update all rows, use C<update_all()> method.
682 686
 
683 687
 =head3 delete()
684 688
 
... ...
@@ -693,10 +697,10 @@ The following SQL is executed.
693 697
 
694 698
 The value of C<id> is embedded into the placehodler.
695 699
 
696
-C<append> and C<filter> argument can be specified
697
-to C<delete()> method if you need.
700
+C<append> and C<filter> argument can be specified.
701
+see also "METHODS" section.
698 702
 
699
-If you want to delete all rows, use C<delete_all()> method instead.
703
+If you want to delete all rows, use C<delete_all()> method.
700 704
 
701 705
 =head3 select()
702 706
 
... ...
@@ -709,7 +713,7 @@ The following SQL is executed.
709 713
     select * from books;
710 714
 
711 715
 the result of C<select()> method is L<DBIx::Custom::Result> object.
712
-You can fetch row.
716
+You can fetch a row by C<fetch()> method.
713 717
 
714 718
     while (my $row = $result->fetch) {
715 719
         my $title  = $row->[0];
... ...
@@ -717,20 +721,21 @@ You can fetch row.
717 721
     }
718 722
 
719 723
 L<DBIx::Custom::Result> has various methods to fetch row.
720
-See "3. Fetch row".
724
+See "4. Fetch row".
721 725
 
722
-Specify C<column> and C<where> arguments.
726
+C<column> and C<where> arguments specified.
723 727
 
724 728
     my $result = $dbi->select(
725 729
         table  => 'books',
726 730
         column => [qw/author title/],
727
-        where  => {author => 'Ken'});
731
+        where  => {author => 'Ken'}
732
+    );
728 733
 
729 734
 The following SQL is executed.
730 735
 
731 736
     select author, title from books where author = ?;
732 737
 
733
-the value of C<author> is embdded into placeholder.
738
+the value of C<author> is embdded into the placeholder.
734 739
 
735 740
 If you want to join tables, specify C<relation> argument. 
736 741
 
... ...
@@ -742,13 +747,12 @@ If you want to join tables, specify C<relation> argument.
742 747
 
743 748
 The following SQL is executed.
744 749
 
745
-    select books.name as book_name from books
750
+    select books.name as book_name from books, rental
746 751
     where books.id = rental.book_id;
747 752
 
748
-C<append> argument add a string to the end of SQL statement.
749
-You can add "order by" or "limit" cluase.
753
+If you want to add some string to the end of SQL statement,
754
+use C<append> argument.
750 755
 
751
-    # Select, more complex
752 756
     my $result = $dbi->select(
753 757
         table  => 'books',
754 758
         where  => {author => 'Ken'},
... ...
@@ -759,13 +763,15 @@ The following SQL is executed.
759 763
 
760 764
     select * books where author = ? order by price limit 5;
761 765
 
762
-C<filter> argument can be specified to filter parameters
763
-if you need.
766
+C<filter> argument can be specified.
767
+see also "METHODS" section.
764 768
 
765
-=head2 3. Fetch row
769
+=head2 4. Fetch row
766 770
 
767 771
 C<select()> method return L<DBIx::Custom::Result> object.
768 772
 You can fetch row by various methods.
773
+Note that in this section, array means array reference,
774
+and hash meanse hash reference.
769 775
 
770 776
 Fetch row into array.
771 777
     
... ...
@@ -820,15 +826,15 @@ Fetch all rows into array of hash
820 826
 
821 827
     my $rows = $result->fetch_hash_all;
822 828
 
823
-If you want to access raw statement handle of L<DBI>, use C<sth()> attribute.
829
+If you want to access statement handle of L<DBI>, use C<sth()> attribute.
824 830
 
825 831
     my $sth = $result->sth;
826 832
 
827
-=head2 4. Hash parameter binding
833
+=head2 5. Hash parameter binding
828 834
 
829 835
 L<DBIx::Custom> provides hash parameter binding.
830 836
 
831
-At frist, I show normal way of parameter binding.
837
+At frist, I show normal parameter binding.
832 838
 
833 839
     use DBI;
834 840
     my $dbh = DBI->connect(...);
... ...
@@ -838,10 +844,10 @@ At frist, I show normal way of parameter binding.
838 844
     $sth->execute('Ken', '%Perl%');
839 845
 
840 846
 This is very good way because database system can enable SQL caching,
841
-and parameter is quoted automatically, it is secure.
847
+and parameter is quoted automatically. this is secure.
842 848
 
843 849
 L<DBIx::Custom> hash parameter binding system improve
844
-normal parameter binding way to specify hash parameter.
850
+normal parameter binding to use hash parameter.
845 851
 
846 852
     my $result = $dbi->execute(
847 853
         "select * from books where {= author} and {like title};"
... ...
@@ -849,15 +855,12 @@ normal parameter binding way to specify hash parameter.
849 855
     );
850 856
 
851 857
 This is same as the normal way, execpt that the parameter is hash.
852
-{= author} is called C<tag>. tag is expand to placeholder string internally.
858
+{= author} and {like title} is called C<tag>.
859
+tag is expand to placeholder string internally.
853 860
 
854 861
     select * from books where {= author} and {like title}
855 862
       -> select * from books where author = ? and title like ?;
856 863
 
857
-The following tags is available.
858
-
859
-=head1 Tags
860
-
861 864
 The following tags is available.
862 865
 
863 866
     [TAG]                       [REPLACED]
... ...
@@ -873,8 +876,8 @@ The following tags is available.
873 876
     {like NAME}            ->   NAME like ?
874 877
     {in NAME COUNT}        ->   NAME in [?, ?, ..]
875 878
     
876
-    {insert NAME1 NAME2}   ->   (NAME1, NAME2) values (?, ?)
877
-    {update NAME1 NAME2}   ->   set NAME1 = ?, NAME2 = ?
879
+    {insert_param NAME1 NAME2}   ->   (NAME1, NAME2) values (?, ?)
880
+    {update_param NAME1 NAME2}   ->   set NAME1 = ?, NAME2 = ?
878 881
 
879 882
 See also L<DBIx::Custom::QueryBuilder>.
880 883
 
... ...
@@ -884,7 +887,7 @@ You can change this tag.
884 887
     $dbi->query_builder->start_tag('|');
885 888
     $dbi->query_builder->end_tag('|');
886 889
 
887
-=head2 5. Filtering
890
+=head2 6. Filtering
888 891
 
889 892
 Usually, Perl string is kept as internal string.
890 893
 If you want to save the string to database, You must encode the string.
... ...
@@ -910,13 +913,16 @@ You can specify these filters to C<filter> argument of C<execute()> method.
910 913
         filter => {author => 'to_upper_case, title => 'encode_utf8'}
911 914
     );
912 915
 
913
-you can also specify filter in suger methods, such as select(), update(), update_all,
914
-delete(), delete_all(), select().
916
+C<filter> argument can be specified to suger methods, such as
917
+C<insert()>, C<update()>, C<update_all>,
918
+C<delete()>, C<delete_all()>, C<select()>.
915 919
 
920
+    # insert(), having filter argument
916 921
     $dbi->insert(table  => 'books',
917
-                 param  => {title => 'perl', author => 'Ken'},
922
+                 param  => {title => 'Perl', author => 'Ken'},
918 923
                  filter => {title => 'encode_utf8'});
919
-
924
+    
925
+    # select(), having filter argument
920 926
     my $result = $dbi->select(
921 927
         table  => 'books',
922 928
         column => [qw/author title/],
... ...
@@ -929,20 +935,20 @@ Filter works each parmeter, but you prepare default filter for all parameters.
929 935
 
930 936
     $dbi->default_bind_filter('encode_utf8');
931 937
 
932
-C<filter()> argument overwrites the filter specified by C<default_bind_filter()>.
938
+C<filter()> argument overwrites this default filter.
933 939
     
934 940
     $dbi->default_bind_filter('encode_utf8');
935 941
     $dbi->insert(
936 942
         table  => 'books',
937
-        param  => {title => 'perl', author => 'Ken', price => 1000},
943
+        param  => {title => 'Perl', author => 'Ken', price => 1000},
938 944
         filter => {author => 'to_upper_case', price => undef}
939 945
     );
940 946
 
941
-This is same as the following one.
947
+This is same as the following example.
942 948
 
943 949
     $dbi->insert(
944 950
         table  => 'books',
945
-        param  => {title => 'perl', author => 'Ken', price => 1000},
951
+        param  => {title => 'Perl', author => 'Ken', price => 1000},
946 952
         filter => {title => 'encode_uft8' author => 'to_upper_case'}
947 953
     );
948 954
 
... ...
@@ -951,12 +957,13 @@ You can also specify filter when the row is fetched. This is reverse of bind fil
951 957
     my $result = $dbi->select(table => 'books');
952 958
     $result->filter({title => 'decode_utf8', author => 'to_upper_case'});
953 959
 
954
-you can specify C<default_fetch_filter()>.
960
+Filter works each column value, but you prepare a default filter
961
+for all clumn value.
955 962
 
956 963
     $dbi->default_fetch_filter('decode_utf8');
957 964
 
958
-C<DBIx::Custom::Result::filter()> overwrites the filter specified
959
-by C<default_fetch_filter()>
965
+C<filter()> method of L<DBIx::Custom::Result>
966
+overwrites this default filter.
960 967
 
961 968
     $dbi->default_fetch_filter('decode_utf8');
962 969
     my $result = $dbi->select(
... ...
@@ -973,21 +980,27 @@ This is same as the following one.
973 980
     );
974 981
     $result->filter({title => 'decode_utf8', author => 'to_upper_case'});
975 982
 
976
-In fetch filter, column name must be lower case even if column conatain upper case charactor. This is requirment not to depend database systems.
983
+Note that in fetch filter, column names must be lower case
984
+even if the column name conatains upper case charactors.
985
+This is requirment not to depend database systems.
977 986
 
978
-=head2 6. Performance
987
+=head2 7. Performance
979 988
 
980 989
 =head3 Disable filter checking
981 990
 
982
-C<filter_check> is 1 by defaut. This is useful in debug.
991
+Filter checking is executed by default.
992
+This is done to check right filter name is specified,
993
+but sometimes damage performance.
983 994
 
984
-This filter check maybe damege performance.
985
-If you require performance, set C<filter_check> to 0.
995
+If you disable this filter checking,
996
+Set C<filter_check> attribute to 0.
986 997
 
987
-=head3 Using execute() method instead suger methods
998
+    $dbi->filter_check(0);
988 999
 
989
-If you execute insert statement by using select() method,
990
-you sometimes can't meet performance requirment.
1000
+=head3 Use execute() method instead suger methods
1001
+
1002
+If you execute insert statement by C<insert()> method,
1003
+you sometimes can't get required performance.
991 1004
 
992 1005
 C<insert()> method is a little slow because SQL statement and statement handle
993 1006
 is created every time.
... ...
@@ -995,14 +1008,9 @@ is created every time.
995 1008
 In that case, you can prepare a query by C<create_query()> method.
996 1009
     
997 1010
     my $query = $dbi->create_query(
998
-        "insert into books {insert title author};"
1011
+        "insert into books {insert_param title author};"
999 1012
     );
1000 1013
     
1001
-    # (In the case of update statement)
1002
-    my $query = $dbi->create_query(
1003
-        "update books {update author};";
1004
-    );
1005
-
1006 1014
 Execute query repeatedly
1007 1015
     
1008 1016
     my $inputs = [
... ...
@@ -1051,7 +1059,7 @@ otherwise, called to get cache.
1051 1059
         }
1052 1060
     });
1053 1061
 
1054
-=head2 7. More features
1062
+=head2 8. More features
1055 1063
 
1056 1064
 =head3 Get DBI object
1057 1065
 
... ...
@@ -1155,12 +1163,12 @@ Default filter when row is fetched.
1155 1163
 Result class for select statement.
1156 1164
 Default to L<DBIx::Custom::Result>.
1157 1165
 
1158
-=head2 C<sql_builder>
1166
+=head2 C<query_builder>
1159 1167
 
1160
-    my $sql_class = $dbi->sql_builder;
1161
-    $dbi          = $dbi->sql_builder(DBIx::Custom::QueryBuilder->new);
1168
+    my $sql_class = $dbi->query_builder;
1169
+    $dbi          = $dbi->query_builder(DBIx::Custom::QueryBuilder->new);
1162 1170
 
1163
-SQL builder. sql_builder must be 
1171
+SQL builder. C<query_builder()> must be 
1164 1172
 the instance of L<DBIx::Custom::QueryBuilder> subclass.
1165 1173
 Default to L<DBIx::Custom::QueryBuilder> object.
1166 1174
 
... ...
@@ -1359,7 +1367,7 @@ B<Example:>
1359 1367
         appned => 'for update'
1360 1368
     );
1361 1369
     
1362
-    # select books.name as book_name from books, rental 
1370
+    # select books.name as book_name from books, rental
1363 1371
     # where books.id = rental.book_id;
1364 1372
     my $result = $dbi->select(
1365 1373
         table    => ['books', 'rental'],
+15 -15
lib/DBIx/Custom/QueryBuilder.pm
... ...
@@ -11,17 +11,17 @@ use DBIx::Custom::QueryBuilder::TagProcessors;
11 11
 
12 12
 __PACKAGE__->dual_attr('tag_processors', default => sub { {} }, inherit => 'hash_copy');
13 13
 __PACKAGE__->register_tag_processor(
14
-    '?'      => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_placeholder_tag,
15
-    '='      => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_equal_tag,
16
-    '<>'     => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_not_equal_tag,
17
-    '>'      => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_greater_than_tag,
18
-    '<'      => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_lower_than_tag,
19
-    '>='     => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_greater_than_equal_tag,
20
-    '<='     => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_lower_than_equal_tag,
21
-    'like'   => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_like_tag,
22
-    'in'     => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_in_tag,
23
-    'insert' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_insert_tag,
24
-    'update' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_update_tag
14
+    '?'     => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_placeholder_tag,
15
+    '='     => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_equal_tag,
16
+    '<>'    => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_not_equal_tag,
17
+    '>'     => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_greater_than_tag,
18
+    '<'     => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_lower_than_tag,
19
+    '>='    => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_greater_than_equal_tag,
20
+    '<='    => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_lower_than_equal_tag,
21
+    'like'  => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_like_tag,
22
+    'in'    => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_in_tag,
23
+    'insert_param' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_insert_param_tag,
24
+    'update_param' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_update_param_tag
25 25
 );
26 26
 
27 27
 __PACKAGE__->attr(tag_start => '{');
... ...
@@ -324,12 +324,12 @@ In tag.
324 324
 
325 325
 =head2 C<insert>
326 326
 
327
-Insert tag.
327
+Insert parameter tag.
328 328
 
329
-    {insert NAME1 NAME2}   ->   (NAME1, NAME2) values (?, ?)
329
+    {insert_param NAME1 NAME2}   ->   (NAME1, NAME2) values (?, ?)
330 330
 
331 331
 =head2 C<update>
332 332
 
333
-Updata tag.
333
+Updata parameter tag.
334 334
 
335
-    {update NAME1 NAME2}   ->   set NAME1 = ?, NAME2 = ?
335
+    {update_param NAME1 NAME2}   ->   set NAME1 = ?, NAME2 = ?
+6 -6
lib/DBIx/Custom/QueryBuilder/TagProcessors.pm
... ...
@@ -55,10 +55,10 @@ sub expand_in_tag {
55 55
     return [$s, $columns];
56 56
 }
57 57
 
58
-sub expand_insert_tag {
58
+sub expand_insert_param_tag {
59 59
     my @columns = @_;
60 60
     
61
-    # Part of insert statement
61
+    # Insert parameters
62 62
     my $s = '(';
63 63
     $s .= "$_, " for @columns;
64 64
     $s =~ s/, $//;
... ...
@@ -71,10 +71,10 @@ sub expand_insert_tag {
71 71
     return [$s, \@columns];
72 72
 }
73 73
 
74
-sub expand_update_tag {
74
+sub expand_update_param_tag {
75 75
     my @columns = @_;
76 76
     
77
-    # Part of update statement
77
+    # Update paramters
78 78
     my $s = 'set ';
79 79
     $s .= "$_ = ?, " for @columns;
80 80
     $s =~ s/, $//;
... ...
@@ -148,12 +148,12 @@ same as the count of column names.
148 148
 
149 149
     ('NAME', 3)  -> ['NAME in (?, ?, ?)', ['NAME', 'NAME', 'NAME']]
150 150
 
151
-=head2 C<expand_insert_tag>
151
+=head2 C<expand_insert_param_tag>
152 152
 
153 153
     ('NAME1', 'NAME2')
154 154
       ->  ['(NAME1, NAME2) values (?, ?, ?)', ['NAME1', 'NAME2']]
155 155
 
156
-=head2 C<expand_update_tag>
156
+=head2 C<expand_update_param_tag>
157 157
 
158 158
     ('NAME1', 'NAME2')
159 159
       ->  ['set NAME1 = ?, NAME2 = ?', ['NAME1', 'NAME2']]
+7 -7
t/dbix-custom-core-sqlite.t
... ...
@@ -97,7 +97,7 @@ is_deeply($rows, [{key1 => 1, key2 => 2}, {key1 => 3, key2 => 4}], "$test : fetc
97 97
 test 'Insert query return value';
98 98
 $dbi->execute($DROP_TABLE->{0});
99 99
 $dbi->execute($CREATE_TABLE->{0});
100
-$source = "insert into table1 {insert key1 key2}";
100
+$source = "insert into table1 {insert_param key1 key2}";
101 101
 $query = $dbi->create_query($source);
102 102
 $ret_val = $dbi->execute($query, param => {key1 => 1, key2 => 2});
103 103
 ok($ret_val, $test);
... ...
@@ -106,7 +106,7 @@ ok($ret_val, $test);
106 106
 test 'Direct query';
107 107
 $dbi->execute($DROP_TABLE->{0});
108 108
 $dbi->execute($CREATE_TABLE->{0});
109
-$insert_tmpl = "insert into table1 {insert key1 key2}";
109
+$insert_tmpl = "insert into table1 {insert_param key1 key2}";
110 110
 $dbi->execute($insert_tmpl, param => {key1 => 1, key2 => 2});
111 111
 $result = $dbi->execute($SELECT_TMPLS->{0});
112 112
 $rows = $result->fetch_hash_all;
... ...
@@ -118,7 +118,7 @@ $dbi->execute($CREATE_TABLE->{0});
118 118
 $dbi->register_filter(twice       => sub { $_[0] * 2}, 
119 119
                     three_times => sub { $_[0] * 3});
120 120
 
121
-$insert_tmpl  = "insert into table1 {insert key1 key2};";
121
+$insert_tmpl  = "insert into table1 {insert_param key1 key2};";
122 122
 $insert_query = $dbi->create_query($insert_tmpl);
123 123
 $insert_query->filter({key1 => 'twice'});
124 124
 $dbi->execute($insert_query, param => {key1 => 1, key2 => 2});
... ...
@@ -129,7 +129,7 @@ $dbi->execute($DROP_TABLE->{0});
129 129
 
130 130
 test 'Filter in';
131 131
 $dbi->execute($CREATE_TABLE->{0});
132
-$insert_tmpl  = "insert into table1 {insert key1 key2};";
132
+$insert_tmpl  = "insert into table1 {insert_param key1 key2};";
133 133
 $insert_query = $dbi->create_query($insert_tmpl);
134 134
 $dbi->execute($insert_query, param => {key1 => 2, key2 => 4});
135 135
 $select_tmpl = "select * from table1 where {in table1.key1 2} and {in table1.key2 2}";
... ...
@@ -171,7 +171,7 @@ is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}], "$te
171 171
 
172 172
 test 'DBIx::Custom::SQLTemplate insert tag';
173 173
 $dbi->execute("delete from table1");
174
-$insert_tmpl = 'insert into table1 {insert key1 key2 key3 key4 key5}';
174
+$insert_tmpl = 'insert into table1 {insert_param key1 key2 key3 key4 key5}';
175 175
 $dbi->execute($insert_tmpl, param => {key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5});
176 176
 
177 177
 $result = $dbi->execute($SELECT_TMPLS->{0});
... ...
@@ -180,11 +180,11 @@ is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}], "$te
180 180
 
181 181
 test 'DBIx::Custom::SQLTemplate update tag';
182 182
 $dbi->execute("delete from table1");
183
-$insert_tmpl = "insert into table1 {insert key1 key2 key3 key4 key5}";
183
+$insert_tmpl = "insert into table1 {insert_param key1 key2 key3 key4 key5}";
184 184
 $dbi->execute($insert_tmpl, param => {key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5});
185 185
 $dbi->execute($insert_tmpl, param => {key1 => 6, key2 => 7, key3 => 8, key4 => 9, key5 => 10});
186 186
 
187
-$update_tmpl = 'update table1 {update key1 key2 key3 key4} where {= key5}';
187
+$update_tmpl = 'update table1 {update_param key1 key2 key3 key4} where {= key5}';
188 188
 $dbi->execute($update_tmpl, param => {key1 => 1, key2 => 1, key3 => 1, key4 => 1, key5 => 5});
189 189
 
190 190
 $result = $dbi->execute($SELECT_TMPLS->{0});