2012-09-01 10 views
5

SQLite'de SQL Server'da INSERT VEYA REPLACE sözdizimini denemiyorum, çünkü hiçbir satır eklenmiyor. tablo sorgu oluşturma listemAndroid SQLite INSERT veya DEĞİŞTİRME

create table providers (provider_id text not null, provider_name text not null, provider_channel_id text not null, channel_name text not null);CREATE UNIQUE INDEX channel_id ON providers (provider_channel_id); 

Benim INSERT OR sorgu

INSERT OR REPLACE INTO providers (provider_channel_id, channel_name, provider_id, provider_name) VALUES ('1', '2', '3', '4') 

Teşekkür

+0

olarak ayarlamak ama provider_channel_id' takın gerekir sütun? – Sieryuu

+0

provider_channel_id, çakışmaların algılanması gereken sütun olup, sorgu sütunlarında oldukça bozuktur :) – TilalHusain

cevap

4
Bu karakola

bak olduğunu değiştirin: (Eğer Sieryuu yorumuna inceledik varsayarak)

How do I UPDATE a row in a table or INSERT it if it doesn't exist?

Yalnızca bir satırı değiştirebilmeniz gerekir.

+3

Bu bana doğru yönde işaret etti, ayrıca bir soruyu da rawQuery yerine execSQL yöntemini kullanarak bu sorguları çalıştırmamız gerekiyor. – TilalHusain

+0

benim sorunum da execSQL() yöntemi kullanılarak çözüldü –

3

i yerine ekin .Kapağı bulundu çözüm ayrıca tablodaki bir satır kimliği varsa ve `provider_id` sütun oluşturun Neden PRIMARY KEY

bdd.replace(table,null, contentValues);