2010-09-10 3 views
1

Je suis assez nouveau pour la programmation iphone. Je voudrais des informations avec vous. Voici la structure de ma base de données:Est-ce que Sqlite sur l'Iphone réorganise les lignes de la base de données lorsque je supprime une ligne?

ID_song : auto-int (primary key) 
txt_song : text 

Lorsque nous supprimer des données d'une vue de la table, et lorsque les données sont supprimées de la base de données SQLite, disons que j'ai seulement trois chansons dans ma base de données

id_song:1 txt_song:Song_A 
id_song:2 txt_song:Song_B <------ (To be deleted) 
id_song:3 txt_song:Song_C 

Après avoir supprimé les lignes, ne les données dans la table ressemble à:

id_song:1 txt_song:Song_A 
id_song:3 txt_song:Song_C 

ou

id_song:1 txt_song:Song_A 
id_song:2 txt_song:Song_C 

Je veux dire, ne sqlite réorganise l'indice?

Répondre

2

Pourquoi serait-il le faire? Tout d'abord, cela pourrait faire un énorme coup de performance et un réel risque de violer l'intégrité des données. La modification de la clé primaire signifie que toutes les clés étrangères associées doivent également être modifiées.

1

Non, il ne fonctionne pas. (Que vous pourriez probablement avoir compris en 5 minutes environ en essayant vous-même. :))

+0

Ok merci pour votre réponse: D – awlcs

1

Non Non Database réécrira un champ d'ID après la suppression d'une ligne. Si vous souhaitez numéroter vos chansons, vous devrez le faire vous-même dans le code.

1

il ressemble à

id_song:1 txt_song:Song_A 
id_song:3 txt_song:Song_C 
Questions connexes