gpt4 book ai didi

mysql - RMySQL - dbWriteTable() 将 TRUE 逻辑写入 0

转载 作者:可可西里 更新时间:2023-11-01 07:38:34 42 4
gpt4 key购买 nike

RMySQL 包中使用 dbWriteTable() 时,无论值如何,逻辑值都写为 0。我希望 TRUE 值会返回 1:

# 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"

t_lgl 值不应该返回 1 因为它是 TRUE 并传递给 dbWriteTable() 作为逻辑?

最佳答案

RMySQL 包是 being phased out支持 RMariaDB。使用 RMariaDB 我能够成功地将 logical 值写入 MySQL 数据库,如下所示:

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

dbWriteTable(con, "test", data.frame(a=T, b=F), overwrite = T)

关于mysql - RMySQL - dbWriteTable() 将 TRUE 逻辑写入 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46782755/

42 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com