Passando uma matriz de dados para um banco de dados SQLite no android

Estou usando uma matriz para enviar dados para meu banco de dados SQLite.
A matriz contém todos os valores selecionados.

 private void addContacts(String[] selectedItems) {

    manager.Insert_phone_contact(selectedItems);
    Intent i = new Intent(this, MainActivity.class);    
    startActivity(i);
}

Meu código de banco de dados SQLite para inserir a matriz "selectedItems" acima mencionada nos valores de conteúdo é o seguinte:

public void Insert_phone_contact(String [] contact){
    try{

        SQLiteDatabase DB = this.getWritableDatabase();
        for(int i=0;i<contact.length;i++){
            ContentValues cv = new ContentValues();
            cv.put(CONTACT_NAME, contact[i]);
            DB.insert(TABLE_CONTACTS, null, cv);
            DB.close();
        }
        }
    catch(Exception ex){
        Log.e("Error in phone contact insertion", ex.toString());
    }

Somente o primeiro item da matriz é armazenado emContentValues cv, nem todos os elementos da matriz.
O que há de errado neste código?
Como posso inserir todos os itens da matriz na tabela "TABLE_CONTACTS"?
Qualquer ajuda será apreciada.

questionAnswers(4)

yourAnswerToTheQuestion