Esta exceção é lançada se
sqlite3_db_readonly()
retorna diferente de zero. Pode retornar diferente de zero se -
o arquivo de banco de dados é somente leitura, ou
-
o arquivo de banco de dados não existe.
(Referência)
Você tem um caminho codificado
"/storage/sdcard1/sk2.db"
- é provável que não exista um banco de dados lá. Use variáveis de Environment
para acessar seu armazenamento externo em vez de caminhos codificados.