Remove Case-Sensitivity in Oracle

Oracle is a great RDBMS, but the fact that searches against the database are case-sensitive can be a pain in the butt. Here’s how you can make searches case-insensitive…

In SQL…

1
2
ALTER session SET NLS_SORT=BINARY_CI;
ALTER session SET NLS_COMP=LINGUISTIC;

For use in Perl::DBI…

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use strict;
use DBI;
 
my $dbh = DBI->connect(
    'dbi:Oracle:schema_name',
    'user',
    'password',
    {
        RaiseError    => 1,
        AutoCommit    => 0,
        on_connect_do => [
            'alter session set NLS_SORT=BINARY_CI',
            'alter session set NLS_COMP=LINGUISTIC'
        ]
    }
) || die "Database connection not made: $DBI::errstr";
 
$dbh->disconnect();

0 Responses to “Remove Case-Sensitivity in Oracle”


  1. No Comments

Leave a Reply