Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 有没有一种聪明的方法可以将SQL导出解析为用Ruby编写的Rails db种子文件?_Ruby On Rails - Fatal编程技术网

Ruby on rails 有没有一种聪明的方法可以将SQL导出解析为用Ruby编写的Rails db种子文件?

Ruby on rails 有没有一种聪明的方法可以将SQL导出解析为用Ruby编写的Rails db种子文件?,ruby-on-rails,Ruby On Rails,是否有任何工具可以获取用SQL编写的导出数据库文件,并将表转换为Rails 3的种子文件?您有两个主要选项 a在Rails中使用连接和执行功能 例如: connection = ActiveRecord::Base.connection statement = File.read('db//data/icd_10.sql') connection.execute(statement) $gem install seed_dump $rake db:seed:dump MODEL=Icd10

是否有任何工具可以获取用SQL编写的导出数据库文件,并将表转换为Rails 3的种子文件?

您有两个主要选项

a在Rails中使用连接和执行功能

例如:

connection = ActiveRecord::Base.connection
statement  = File.read('db//data/icd_10.sql')
connection.execute(statement)
$gem install seed_dump 
$rake db:seed:dump MODEL=Icd10Code APPEND=true
$rake db:seed --trace
执行以下SQL语句:

=> INSERT INTO `icd_10_ca_codes` (`ICD_10_CA_Code`, `Block`, `Code_id`, `Code_Description`, `Code_Includes`, `Code_Excludes`, `Code_Notes`, `created_at`, `updated_at`)
=> VALUES ('G35', '' , 'Multiple sclerosis', 'Multiple sclerosis (of):
• NOS
• brain stem
• cord
• disseminated
• generalized', NULL, NULL);
b使用seed_dump gem从SQL数据库导出到seed文件,并生成包含数据的模板

例如:

connection = ActiveRecord::Base.connection
statement  = File.read('db//data/icd_10.sql')
connection.execute(statement)
$gem install seed_dump 
$rake db:seed:dump MODEL=Icd10Code APPEND=true
$rake db:seed --trace
在种子文件中生成以下内容:

=> Icd10CaCode.create([
=> { :ICD_10_CA_Code => "G35", :Block => "G35", :Code_id => "", :Code_Description => "Multiple sclerosis", :Code_Includes => "Multiple sclerosis (of):\n• NOS\n• brain stem\n• cord\n• disseminated\n• generalized", :Code_Excludes => nil, :Code_Notes => nil, :created_at => "2013-06-24 20:37:24", :updated_at => "2013-06-24 20:37:28" };
=> ], :without_protection => true )

你有两个主要的选择

a在Rails中使用连接和执行功能

例如:

connection = ActiveRecord::Base.connection
statement  = File.read('db//data/icd_10.sql')
connection.execute(statement)
$gem install seed_dump 
$rake db:seed:dump MODEL=Icd10Code APPEND=true
$rake db:seed --trace
执行以下SQL语句:

=> INSERT INTO `icd_10_ca_codes` (`ICD_10_CA_Code`, `Block`, `Code_id`, `Code_Description`, `Code_Includes`, `Code_Excludes`, `Code_Notes`, `created_at`, `updated_at`)
=> VALUES ('G35', '' , 'Multiple sclerosis', 'Multiple sclerosis (of):
• NOS
• brain stem
• cord
• disseminated
• generalized', NULL, NULL);
b使用seed_dump gem从SQL数据库导出到seed文件,并生成包含数据的模板

例如:

connection = ActiveRecord::Base.connection
statement  = File.read('db//data/icd_10.sql')
connection.execute(statement)
$gem install seed_dump 
$rake db:seed:dump MODEL=Icd10Code APPEND=true
$rake db:seed --trace
在种子文件中生成以下内容:

=> Icd10CaCode.create([
=> { :ICD_10_CA_Code => "G35", :Block => "G35", :Code_id => "", :Code_Description => "Multiple sclerosis", :Code_Includes => "Multiple sclerosis (of):\n• NOS\n• brain stem\n• cord\n• disseminated\n• generalized", :Code_Excludes => nil, :Code_Notes => nil, :created_at => "2013-06-24 20:37:24", :updated_at => "2013-06-24 20:37:28" };
=> ], :without_protection => true )