标签: data-migration

Core Data能否处理我的"系统与用户数据"迁移需求?

我的iPhone应用程序将具有只读 "系统"数据和读/写 "用户"数据(使用Core Data或自定义SQLite数据库存储).用户数据可以参考系统数据.安装新版本的应用程序时(例如,通过iTunes):

  • 更新附带的系统数据应覆盖/替换系统数据
  • 应修改用户数据以引用系统数据(如果可能).

问题:如何使用Core Data完成此类迁移?这可行吗?

例如,假设我的应用程序用于管理食谱.

  • 每个版本的应用程序都会附带一组默认配方.
  • 用户无法编辑这些"官方"食谱.
  • 但是,开发人员可以在应用程序的未来版本中修改(或删除)任何"官方"配方.
  • 允许用户在"官方"食谱中添加注释/评论(例如,"烘烤45分钟而不是30分钟").

当用户升级到新版本的应用程序时,我们希望保留用户评论,并尝试将它们与新的"官方"配方集中的匹配食谱重新关联.核心数据是否可行/可行?或许我应该使用简单的"数据库"解决方案(例如,SQLite和传统的创建/读取/更新/删除操作)?

谢谢!

iphone data-migration core-data

2
推荐指数
1
解决办法
761
查看次数

Liquibase建议将生产数据从旧数据库模式迁移到新数据库模式吗?

我是数据迁移领域的新手,并研究如何使用OurApp 1.0将客户数据迁移到具有与OurApp 2.0兼容的模式的新数据库.我见过不止一些人推荐Liquibase用于数据库更改管理和数据库重构任务,这对我的新手来说听起来可能接近我们需要的东西.

但是,在阅读www.liquibase.org上的资料后,我感觉Liquibase更多的是保持模式最新,而不是转换大量现有数据,以便它可以保留在新模式中.

假设我想将名为name的Employee表中的列拆分为firstname和lastname列.Liquibase可以通过删除name列并添加firstname和lastname列来更改表.但是,我觉得Liquibase并不是真正为我构建的插入转换代码,它将数据库中现有记录的名称字段解析为firstname和lastname,并将它们存储在各自的列中.

例如,假设我的桌子看起来像这样

id | name             | position
*********************************
12   Horace Slughorn    Professor
13   Albus Dumbledore   Headmaster
Run Code Online (Sandbox Code Playgroud)

运行Liquibase之后,name列将被firstname和lastname列替换,因此我的数据库模式将是正确的.但我猜Liquibase不是一个框架,它允许我插入一些代码,将"Horace Slughorn"解析为"Horace"和"Slughorn",并将这些值存储在该记录的firstname和lastname列中.

id | firstname   |  lastname  | position
*****************************************
12   Horace         Slughorn         Professor
13   Albus          Dumbledore       Headmaster
Run Code Online (Sandbox Code Playgroud)

因此,Liquibase使您的架构保持最新,但不是为了帮助您转换现有数据以使其与新架构匹配.是对的吗?

data-migration liquibase

2
推荐指数
1
解决办法
4861
查看次数

我应该如何将这些数据迁移到这些Sql Server表中?

我希望将一些表中的一些数据迁移到这些新的THREE表中.

这是我的目标架构:

替代文字

请注意,我需要插入第一Location台..抢SCOPE_IDENTITY()..然后将行入BoundaryCountry表格.

SCOPE_IDENTITY()是杀了我:(意思是,我只能看到一种方法来做到这一点CURSORS.有没有更好的选择?

UPDATE

这是DB Schema的脚本....

地点

CREATE TABLE [dbo].[Locations](
    [LocationId] [int] IDENTITY(1,1) NOT NULL,
    [Name] [nvarchar](100) NOT NULL,
    [OriginalLocationId] [int] NOT NULL,
 CONSTRAINT [PK_Locations] PRIMARY KEY CLUSTERED 
(
    [LocationId] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) 
Run Code Online (Sandbox Code Playgroud)

国家

CREATE TABLE [dbo].[Locations_Country](
    [IsoCode] [nchar](2) NOT NULL,
    [LocationId] [int] NOT NULL,
 CONSTRAINT [PK_Locations_Country] PRIMARY KEY CLUSTERED …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server data-migration sql-server-2008

2
推荐指数
1
解决办法
238
查看次数

是否更容易为开发中的gae应用程序抓取数据并将其上传到prod或者你应该在生产中刮掉?

我必须运行一个抓取任务来收集我的App Engine(Java)应用程序的数据.

我不确定哪个最好 - 在应用程序在生产环境中运行时,在开发模式下抓取数据并将其上传到prod或scrape.

这有什么不同吗?

将大量数据从一个环境带到另一个环境(dev->prodprod->dev)是否有任何困难

java database google-app-engine data-migration web-scraping

2
推荐指数
1
解决办法
137
查看次数

Rails - 理解db:migrate

我在理解Ruby on Rails中的迁移时遇到了一些麻烦.我的应用程序db\migrate\目录中有以下两个类(存储在单独的文件中):

class CreateUsers < ActiveRecord::Migration
  def self.up
    create_table :users do |t|
      t.string :name
      t.string :email

      t.timestamps
    end
  end

  def self.down
    drop_table :users
  end
end

class AddEmailUniquenessIndex < ActiveRecord::Migration
  def self.up
    add_index :users, :email, :unique => true
  end

  def self.down
    remove_index :users, :email
  end
end
Run Code Online (Sandbox Code Playgroud)

我很困惑这两个文件似乎是如何一起运行的.在创建第二个类时,Michael Hartl的书说"我们可以编辑用户表的迁移文件,但这需要回滚然后再迁移.Rails方法是每当我们发现我们的数据模型需要时使用迁移改变." 这些迁移实际上如何运作?迁移数据库时是否运行目录中的所有文件?就像这里的幕后情况一样?

ruby data-migration ruby-on-rails-3

2
推荐指数
2
解决办法
2991
查看次数

SQL:从另一个数据库中插入数据(如果它们尚不存在)

我有两个SQL Server数据库A和B.

它们都包含一个名为表Users与列name,Age,Salary

我想编写一个脚本来将Users数据库A插入数据库B(如果它们尚未存在的话Name)

基本上我在SQL脚本中需要这个:

Foreach (UserA in DatabaseA.Users)
    If UserA.Name does not exist in DatabaseB.Users
        Insert UserA in DatabaseB.Users
Run Code Online (Sandbox Code Playgroud)

非常感谢您的帮助

sql database data-migration sql-server-2008

2
推荐指数
1
解决办法
2945
查看次数

如何使用新生成的数据库添加新的代码优先迁移?

我已经在我的实体框架项目上启用了代码优先迁移,并添加了一些迁移,这些迁移执行重命名表等操作.但是,我现在已经删除了数据库并导致实体框架根据我的最新数据模型生成一个全新的数据库.如果我尝试运行:

PM> Add-Migration TestMigration
Run Code Online (Sandbox Code Playgroud)

...它告诉我,我需要先应用现有的迁移.所以我跑:

PM> Update-Database
Run Code Online (Sandbox Code Playgroud)

...但问题是它正在尝试更新不需要更新的数据库; 它已经基于最新的数据模型.因此,当我尝试重命名现在不存在的表时,我收到错误.

我是否可以通过某种方式向数据迁移指出我的数据库是最新的并且不需要在其上运行任何迁移?我该怎么办?

sql-server data-migration entity-framework ef-code-first ef-migrations

2
推荐指数
1
解决办法
7492
查看次数

在无模式数据库中迁移数据格式有哪些好方法?

如果您使用无模式数据库(特别是面向文档的数据库,如CouchDB,Couchbase,MongoDB)并希望更改特定对象的数据表示格式,则可以保留旧格式的现有记录并以新格式创建新记录.它被宣布为无模式数据库的主要优势之一(我认为因为你可以避免停机).另一方面,处理同类数据的许多格式是不方便和低效的.那么在无模式数据库中将数据从一种格式迁移到另一种格式的好方法/策略是什么?

data-migration document-oriented-db schemaless nosql couchbase

2
推荐指数
1
解决办法
1045
查看次数

在Azure中连接到源服务器以进行数据迁移时出现以下错误

Invalid source server details were specified for the migration.
Validator 'Microsoft.SqlServer.Migration.Core.Validators.SupportedDatabaseEnvironmentValidator' failed to validate data.
A connection was successfully established with the server, but then an error occurred during the login process. (provider: SSL Provider, error: 0 - The certificate chain was issued by an authority that is not trusted.)
The certificate chain was issued by an authority that is not trusted
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我是Azure新手,希望从我的计算机数据库迁移到azure.

data-migration azure azure-sql-database

2
推荐指数
1
解决办法
2010
查看次数

Django-代理模型权限

auth.Group想从模型创建一个代理模型,我想将其应用于permissions它。

代理

class InstitutionOwnerGroup(Group):

    # Gestores
    pk = 1

    is_superuser = False
    is_staff = False

    class Meta:
        proxy = True
        permissions = (
            ('can_manage_institutions', 'Gerencia Instituições'),
        )
Run Code Online (Sandbox Code Playgroud)

数据迁移

# Generated by Django 2.1.1 on 2018-10-14 23:30

from django.db import migrations
from horsy.apps.accounts.proxies import InstitutionOwnerGroup


def create_owner_group(app, _schema):
    InstitutionOwnerGroup.objects.create(
        name="Gestores"
    )


class Migration(migrations.Migration):

    dependencies = [
        ('accounts', '0002_add_admin_user'),
    ]

    operations = [
        migrations.RunPython(create_owner_group)
    ]
Run Code Online (Sandbox Code Playgroud)

管理面板中的Gestores模型:

在管理面板中分组

给定的权限can_manage_institutions未应用于数据迁移中的模型。

如何通过使用django权限系统将权限应用于继承自的代理模型auth.Group

python django data-migration model

2
推荐指数
1
解决办法
496
查看次数