从R?
向Microsoft SQL Server写入数据时,如何在列标题中保存空格?注意,我希望列名中包含空格,因为这是一个关联表,其中包含针对关键字/短语的关键字/短语。我可以将ID作为列名,但最终用户最终会希望看到列名实际上是。 “go skateboard”和“goskateboard”之间存在差异。
以下是一些澄清问题的代码。
# Load RODBC package
library(RODBC)
# Connect to database (write database name in quoted area)
con <- odbcConnect("")
# Generate random matrix
mat_test <- matrix(rnorm(12), 4, 3)
# Label column headers
colnames(mat_test) <- c("A","A B", "C")
# Change matrix to dataframe
df_test <- as.data.frame(mat_test)
# View data frame. Note how there is a space in the column header labled "A B"
View(df_test)
# Write data frame to database. Why is the space gone? How do I preserve the space?
sqlSave(con, df_test, tablename = "12_Test_12", rownames = FALSE, colnames = TRUE)
答案 0 :(得分:0)
尝试将列名更改为&#34; [A B]&#34;。 SQL服务器有时不喜欢列名中的空格,除非它们用括号括起来。 编辑:我或许还应该提到大多数人建议不要在列名中使用空格,因为它很容易混淆并且通常需要更多的工作,而常见的解决方案是使用下划线:&#34; A_B&#34;