DBIx-FullTextSearch
view release on metacpan or search on metacpan
lib/DBIx/FullTextSearch/Blob.pm view on Meta::CPAN
5758596061626364656667686970717273747576
}
return
$num_words
;
}
sub
delete_document {
my
$self
=
shift
;
for
my
$id
(
@_
) {
$self
->update_document(
$id
, {}); }
}
sub
update_document {
my
(
$self
,
$id
,
$words
) =
@_
;
my
$fts
=
$self
->{
'fts'
};
my
$dbh
=
$fts
->{
'dbh'
};
my
$data_table
=
$fts
->{
'data_table'
};
my
$insert_sth
= (
defined
$self
->{
'insert_sth'
}
?
$self
->{
'insert_sth'
}
:
$self
->{
'insert_sth'
} =
$dbh
->prepare("
insert into
$data_table
values
(?, ?)") );
lib/DBIx/FullTextSearch/BlobFast.pm view on Meta::CPAN
161718192021222324252627282930313233343536
my
$value
=
''
;
for
my
$id
(
@_
) {
$value
.=
pack
$packstring
,
$id
, 0;
}
$dbh
->
do
("
update
$data_table
set idx = concat(idx, ?)
", {},
$value
);
1;
}
sub
update_document {
my
$self
=
shift
;
$self
->delete_document(
$_
[0]);
$self
->add_document(
@_
);
}
sub
contains_hashref {
my
$self
=
shift
;
my
$fts
=
$self
->{
'fts'
};
my
$dbh
=
$fts
->{
'dbh'
};
my
$data_table
=
$fts
->{
'data_table'
};
lib/DBIx/FullTextSearch/Column.pm view on Meta::CPAN
107108109110111112113114115116117118119120121122123124125126127sub
delete_document {
my
$self
=
shift
;
my
$fts
=
$self
->{
'fts'
};
my
$dbh
=
$fts
->{
'dbh'
};
my
$data_table
=
$fts
->{
'data_table'
};
my
$sth
=
$dbh
->prepare(
"delete from $data_table where doc_id = ?"
);
for
my
$id
(
@_
) {
$sth
->execute(
$id
); }
}
sub
update_document {
my
(
$self
,
$id
,
$words
) =
@_
;
$self
->delete_document(
$id
);
$self
->add_document(
$id
,
$words
);
}
sub
contains_hashref {
my
$self
=
shift
;
my
$fts
=
$self
->{
'fts'
};
my
$dbh
=
$fts
->{
'dbh'
};
my
$data_table
=
$fts
->{
'data_table'
};
lib/DBIx/FullTextSearch/Phrase.pm view on Meta::CPAN
949596979899100101102103104105106107108109110111112113114
$num_words
++;
};
$dbh
->
do
(
"insert into $word_id_table values "
.
join
(
','
,
@widshandler
),
undef
,
@wids
)
if
@wids
;
$dbh
->
do
(
"unlock tables"
);
$dbh
->
do
(
"insert into $data_table values "
.
join
(
','
,
@datahandler
),
undef
,
@data
)
if
@data
;
return
$num_words
;
}
sub
update_document {
my
(
$self
,
$id
,
$words
) =
@_
;
my
$fts
=
$self
->{
'fts'
};
my
$dbh
=
$fts
->{
'dbh'
};
my
$data_table
=
$fts
->{
'data_table'
};
$dbh
->
do
(
"delete from $data_table where doc_id = ?"
, {},
$id
);
$self
->add_document(
$id
,
$words
);
}
sub
contains_hashref {
( run in 0.579 second using v1.01-cache-2.11-cpan-49f99fa48dc )