Case Insensitive search

Hey , i am trying to do a search for the certain books , and im trying to make it case insensitive. what i have come up with so far is this :

Database.txt
RETARDED MONKEY:RACHEAL ABRAHAML:30:30:20
GOLD:FATIN:23.20:12:3
STUPID:JERLYN:20:40:3
echo -n "Title: "
read Title
echo -n "Author:"
read Author
echo ""
 
valuecheck=`grep -i "$Title" Database.txt | grep -i "$Author"  | awk -F":" '{ print $1}'`
echo $valuecheck
if [ $Title = $valuecheck ] ; then

echo "HOHOHO"
else 
echo "too bad"

fi

the issue which i am having is that, when it does the search for the correct row to be inputted into valuecheck , it will input the value as written in the database, which is in Uppercase.

For this case, if i type in stupid for $Title and jerlyn for $Author, it searches the correct row, but the awk will print "STUPID" into the variable as that is what is written in the database.

so how can i make my if statement case insensitive? currently it reads like this
i

f [ $Title = $valuecheck ] ; then

which means

if [stupid = STUPID ] ; then

how can i make it case insensitive to allow it to display "HOHOHO"

try:

if [ "$(echo $Title | tr "[:lower:]" "[:upper:]")" = "STUPID" ] ; then

yeap , that would work. but sometimes, my database does not store all in uppercase , for example

Database.txt
RETARDED MONKEY:RACHEAL ABRAHAML:30:30:20
GOLD:FATIN:23.20:12:3
STUPID:JERLYN:20:40:3
Funny:mike:30:40:60

thus, the code above will not work. is there a way to make the if [] case insensitive, so as long as the words match each other , it will be able to read the "HOHOHO" statement?

I am not sure about that.
but you can compare lower or upper both the side.

eg

if [ "$(echo $Title|tr "[:lower:]" "[:upper:]")" = "$(echo $valuecheck|tr "[:lower:]" "[:upper:]")" ] ; then