Normalization is the same no matter what the type of db (SQLite, Oracle, DB/2, whatever).
1st rule for normalizing (i.e. 1NF):
All columns contain an amotic value. That is, a single value that does not need to be broken down any more to process.
So, walk thru all columns of the table and check if they meet 1NF rules:
Song Name -- looks good, single value, doesn't repeat, doesn't need broken down. But everyone knows that more than one song can have the same name. Since every entity ("table") entry must have a unique key, we'll add:
Song Identifier -- an integer value we assign to each song to give it a unique key. The first song entered will be 1, the next 2, etc., very similar to a customer number.
Sheet detail -- multiple values, so cannot be an attribute ("column") in this entity ("table"). You'll need a separate entity for sheet details. It will be linked to the main table by "Song Identifier" (thus the requirement for a unique identifier for each song).
MP3 path -- multiple values, so cannot be a single attribute in this entity. You'll need a separate entity for MP3 paths. It will be linked to the main table by "Song Identifier" (thus the requirement for a unique identifier for each song).
Add attributes ("columns") to the "Sheet Detail" and "MP3 path" entities. Then go thru those columns, checking the rules for 2NF and 3NF. When you've met those rules for all entities, it's normalized.
The general approach is correct. You can clean it up a bit.
For one huge thing, every table does not need an identity column, and absolutely not as a "default" PK. No, really, it's true. You can and should have tables without an identity column, particularly for certain child tables. The PK should start with the parent's key. Or you could follow the parent key with an identity column. But for child tables, you should almost never key them only on identity. It's terrible for performance and for design.
CREATE TABLE "tbl_mp3_path"
"int_main_table_id" INTEGER NOT NULL,
"mp3_sequence" SMALLINT NOT NULL, /counter for each person's mp3s/
"txt_mp3_path" VARCHAR(200) NOT NULL,
PRIMARY KEY ( "int_main_table_id", "mp3_sequence" )