Mysql 如何从表1中检索列值并将其保存在表2中';谁的专栏?

Mysql 如何从表1中检索列值并将其保存在表2中';谁的专栏?,mysql,ruby,csv,activerecord,rubygems,Mysql,Ruby,Csv,Activerecord,Rubygems,表1: ID | Name | Address 1 | prakash | 2-107, NY 2 | rakesh | 2-109/a, NY 表2: emp_ID| Name | Designation ? | Prakash | Software Developer ? | Rakesh | Software Tester 通过使用表2中的Name列,我需要从表1中获取id并将其放入表2中 require 'csv' load 'dbco

表1:

ID |   Name    | Address
1  |  prakash  | 2-107, NY
2  |  rakesh   | 2-109/a, NY
表2:

emp_ID| Name    | Designation
   ?  | Prakash | Software Developer
   ?  | Rakesh  | Software Tester
通过使用表2中的Name列,我需要从表1中获取id并将其放入表2中

require 'csv'
load 'dbconnection.rb'
require 'activerecord'


class Employee<ActiveRecord::Base

end

class Designation<ActiveRecord::Base
end

#Employee  Table Data Insertion
CSV.foreach("C:/Users/modi/Desktop/employee.csv") do |row|
    Employee.create!(
        # ID will be auto increement 
        :name => row[0],
        :address => row[1],
        )
    end


#Designation Table Data Insertion

CSV.foreach('C:/Users/modi/Desktop/designation.csv') do |row|

    Designation.create!(
        :Emp_id #Here we need to get the id value from the Employee Table
        :name => row[0],
        :designation=>row[1]
        )           
    end
需要“csv”
加载“dbconnection.rb”
需要“activerecord”
类别员工行[1],
)
结束
#指定表数据插入
CSV.foreach('C:/Users/modi/Desktop/designation.CSV')do|行|
创造!(
:Emp_id#这里我们需要从Employee表中获取id值
:name=>第[0]行,
:名称=>第[1]行
)           
结束

假设
员工
不包含大量数据,您可以执行以下操作:

employees = Employee.all
CSV.foreach('C:/Users/modi/Desktop/designation.csv') do |row|
  Designation.create!(
    :Emp_id => employees.detect { |emp| emp.name == row[0] }.id # handle nil case
    :name => row[0],
    :designation=>row[1]
  )           
end

你的csv文件有标题吗?不,我不使用@shivam只是为了澄清,它们都是
csv.foreach
同一文件的一部分吗?给我推荐一些链接和书籍,让我从初学者改为程序员我自己也是一名学习者。我能给你的最好建议就是继续写代码,在遇到困难时用谷歌搜索