|
|
|
@ -51,6 +51,19 @@ namespace Emby.Server.Implementations.Data
|
|
|
|
|
private readonly TypeMapper _typeMapper;
|
|
|
|
|
private readonly JsonSerializerOptions _jsonOptions;
|
|
|
|
|
|
|
|
|
|
static SqliteItemRepository() {
|
|
|
|
|
var queryPrefixText = new StringBuilder();
|
|
|
|
|
queryPrefixText.Append("insert into mediaattachments (");
|
|
|
|
|
foreach (var column in _mediaAttachmentSaveColumns)
|
|
|
|
|
{
|
|
|
|
|
queryPrefixText.Append(column);
|
|
|
|
|
queryPrefixText.Append(',');
|
|
|
|
|
}
|
|
|
|
|
queryPrefixText.Length -= 1;
|
|
|
|
|
queryPrefixText.Append(") values ");
|
|
|
|
|
_mediaAttachmentInsertPrefix = queryPrefixText.ToString();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Initializes a new instance of the <see cref="SqliteItemRepository"/> class.
|
|
|
|
|
/// </summary>
|
|
|
|
@ -436,6 +449,7 @@ namespace Emby.Server.Implementations.Data
|
|
|
|
|
"Filename",
|
|
|
|
|
"MIMEType"
|
|
|
|
|
};
|
|
|
|
|
private static readonly string _mediaAttachmentInsertPrefix;
|
|
|
|
|
|
|
|
|
|
private static string GetSaveItemCommandText()
|
|
|
|
|
{
|
|
|
|
@ -6223,7 +6237,7 @@ where AncestorIdText not null and ItemValues.Value not null and ItemValues.Type
|
|
|
|
|
|
|
|
|
|
while (startIndex < attachments.Count)
|
|
|
|
|
{
|
|
|
|
|
var insertText = new StringBuilder(string.Format("insert into mediaattachments ({0}) values ", string.Join(",", _mediaAttachmentSaveColumns)));
|
|
|
|
|
var insertText = new StringBuilder(_mediaAttachmentInsertPrefix);
|
|
|
|
|
|
|
|
|
|
var endIndex = Math.Min(attachments.Count, startIndex + insertAtOnce);
|
|
|
|
|
|
|
|
|
|