2017-10-17 3 views
1

RMySQL 패키지에서 dbWriteTable()을 사용하면 논리 값은 값에 관계없이 0으로 기록됩니다. 그 TRUE 값을 반환 기대 1 :RMySQL - dbWriteTable()은 TRUE 논리를 0으로 씁니다.

# Setup 
# con is a valid MySQLConnection object 
> df <- data.frame(string = 'Testing Logical Values', 
       t_lgl = TRUE, 
       f_lgl = FALSE, 
       stringsAsFactors = FALSE) 
> df 
        string t_lgl f_lgl 
1 Testing Logical Values TRUE FALSE 
> class(df[,2]) 
[1] "logical" 

# Test 
# This schema has no tables until dbWriteTable() is called 
> dbWriteTable(con,'test_table',df) 
[1] TRUE 

# Result 
> dbReadTable(con,'test_table') 
        string t_lgl f_lgl 
1 Testing Logical Values  0  0 
> class(dbReadTable(con,'test_table')[,2]) 
[1] "integer" 

해서는 안가 TRUE이고 논리적으로 dbWriteTable()에 전달 된 이후 t_lgl 값 반환 한?

답변

0

RMySQL 패키지는 을 선호하는 being phased out 패키지입니다.

con <- dbConnect(RMariaDB::MariaDB(), group = "my-db") 

dbWriteTable(con, "test", data.frame(a=T, b=F), overwrite = T) 
: RMariaDB를 사용하여 나는 성공적으로이 같은 MySQL 데이터베이스에 logical 값을 기록 할 수 있어요
관련 문제