private bool UpdateDatasetMetadataInternal(string identityId, DatasetMetadata metadata) { lock (sqlite_lock) { DatasetMetadata local = this.GetMetadataInternal(identityId, metadata.DatasetName); SQLiteStatement stmt = null; try { if (local == null) { stmt = db.Prepare(DatasetColumns.BuildInsert()); stmt.BindText(1, identityId); stmt.BindText(2, metadata.DatasetName); stmt.BindDateTime(3, metadata.CreationDate); stmt.BindDateTime(4, metadata.LastModifiedDate); stmt.BindInt(5, metadata.RecordCount); stmt.BindInt(6, metadata.StorageSizeBytes); stmt.BindInt(7, 0); stmt.BindInt(8, 0); stmt.BindText(9, null); stmt.Step(); } else { stmt = db.Prepare( DatasetColumns.BuildUpdate( new string[] { DatasetColumns.DATASET_NAME, DatasetColumns.CREATION_TIMESTAMP, DatasetColumns.LAST_MODIFIED_TIMESTAMP, DatasetColumns.LAST_MODIFIED_BY, DatasetColumns.RECORD_COUNT, DatasetColumns.STORAGE_SIZE_BYTES }, DatasetColumns.IDENTITY_ID + " = @whereIdentityId AND " + DatasetColumns.DATASET_NAME + " = @whereDatasetName" )); stmt.BindText(1, metadata.DatasetName); stmt.BindDateTime(2, metadata.CreationDate); stmt.BindDateTime(3, metadata.LastModifiedDate); stmt.BindText(4, metadata.LastModifiedBy); stmt.BindInt(5, metadata.RecordCount); stmt.BindInt(6, metadata.StorageSizeBytes); stmt.BindText(7, identityId); stmt.BindText(8, metadata.DatasetName); stmt.Step(); } return true; } finally { stmt.FinalizeStm(); } } }
private bool UpdateDatasetMetadataInternal(string identityId, DatasetMetadata metadata) { lock (sqlite_lock) { DatasetMetadata local = GetMetadataHelper(identityId, metadata.DatasetName); if (local == null) { string updateDatasetMetadataQuery = DatasetColumns.BuildInsert(); ExecuteMultipleHelper(new List<Statement>(){ new Statement{ Query = updateDatasetMetadataQuery, Parameters = new object[]{identityId,metadata.DatasetName,metadata.CreationDate,metadata.LastModifiedDate,metadata.RecordCount,metadata.StorageSizeBytes,0,0,null} } }); } else { string updateDatasetMetadataQuery = DatasetColumns.BuildUpdate( new string[] { DatasetColumns.DATASET_NAME, DatasetColumns.CREATION_TIMESTAMP, DatasetColumns.LAST_MODIFIED_TIMESTAMP, DatasetColumns.LAST_MODIFIED_BY, DatasetColumns.RECORD_COUNT, DatasetColumns.STORAGE_SIZE_BYTES }, DatasetColumns.IDENTITY_ID + " = @whereIdentityId AND " + DatasetColumns.DATASET_NAME + " = @whereDatasetName " ); ExecuteMultipleHelper(new List<Statement>(){ new Statement{ Query = updateDatasetMetadataQuery, Parameters = new object[]{metadata.DatasetName,metadata.CreationDate,metadata.LastModifiedDate,metadata.LastModifiedBy,metadata.RecordCount,metadata.StorageSizeBytes,identityId,metadata.DatasetName} } }); } return true; } }