본문 바로가기
MySql

MySQL 데이터 프레임에서 RMySQL에 삽입

by 베이스 공부 2021. 1. 11.
반응형

RMySQL을 사용하여 MySQL 테이블에 데이터를 추가하려고합니다. 한 번에 하나의 행만 추가하면되는데 작동하지 않습니다. 내가하려는 것은 이것입니다.

dbGetQuery(con,"INSERT INTO names VALUES(data[1,1], data[1,2])")

그래서 제가하고있는 것은 "data"라는 이름의 데이터 프레임에 값이 있고 mysql 테이블에 넣어야한다는 것입니다. 그 전에 이미 테이블에 있는지 여부를 확인하고 그렇지 않은 경우 추가하겠습니다. 그러나 그렇게하면 작동하지 않습니다. 데이터는 read.csv 로 .csv 파일에서 읽습니다.

 

해결 방법

 

붙여 넣기 를 사용하여 실제 쿼리를 구성 할 수 있습니다.

dat <- matrix(1:4, 2, 2)
query <- paste("INSERT INTO names VALUES(",data[1,1], ",", data[1,2], ")")
query
#[1] "INSERT INTO names VALUES( 1 , 3 )"
dbGetQuery(con, query)

# If there are a lot of columns this could be tedious...
# So we could also use paste to add all the values at once.
query <- paste("INSERT INTO names VALUES(", paste(data[1,], collapse = ", "), ")")
query
#[1] "INSERT INTO names VALUES( 1, 3 )"

 

참조 페이지 https://stackoverflow.com/questions/15073929

 

 

반응형

댓글