我已經在sqlite中使用sqlite管理器創建了一個視圖。沒有這樣的列:R1.ReadingDate錯誤
Create View vMeterReading
as
SELECT M._id as Meter_id, M.MeterNumber, R1.ReadingDate, R1.Reading AS CurrentReading, R2.ReadingDate AS PrevReadingDate, R2.Reading AS PrevMeterReading, R2.Rate as Rate, R2._id,R1.TenantMeter_id
FROM (Meters AS M INNER JOIN TenantMeters ON M._id = TenantMeters.Meter_id) INNER JOIN (MeterReading AS R1 INNER JOIN MeterReading AS R2 ON R1.TenantMeter_id = R2.TenantMeter_id) ON TenantMeters._id = R1.TenantMeter_id
WHERE (((R2.ReadingDate)=(SELECT Max(R3.ReadingDate)
FROM [MeterReading] AS R3
WHERE (R3.TenantMeter_id = R1.TenantMeter_id)
AND (R3.ReadingDate < R1.ReadingDate)
))) OR (((R2.TenantMeter_id) Is Null))
ORDER BY M.MeterNumber, R1.ReadingDate.
我曾嘗試使用android系統中此視圖(select * from vMeterReading
),我得到了錯誤的標題。
我也連接到命令提示符的sqlite數據庫,並試圖執行相同的查詢。我犯了同樣的錯誤。
sql語句有什麼問題?
它在sql管理器(Firefox附加組件)中運行良好。
請粘貼您創建語句。您的數據庫是在data/data//database/folder中創建的。請通過sqlite瀏覽器進行檢查。如果是,則從數據/數據/ /database /中刪除並重新啓動應用程序。請評論,如果你有任何問題。 –
你好Zohra。我正在使用預先創建的數據庫。 – user3079559
然後您必須將您的數據庫從資產文件夾複製到應用程序數據庫文件夾。 –