是否可以定义默认情况下创建新表的模式?(由"不合格的表名称"引用.)
我已经看到了在Postgres中使用"搜索路径"的一些细节,但我认为它只在检索数据时有效,而不是创建.
我有一堆SQL脚本,它们创建了许多表.我没有修改脚本,而是希望默认情况下在特定模式中设置数据库创建表 - 当它们具有非限定名称时.
这可能吗?
当尝试写入具有非默认架构的表时,dbWriteTable在包 DBI 中,写入default.non-default.tablename而不是写入non-default.tablename. 我知道它non-default.tablename存在,因为它出现在我的 SSMS 数据库中。
使用非默认架构“来宾”在 SQL Server 中创建此表。我将它放在一个名为“SAM”的数据库中:
CREATE TABLE guest.MikeTestTable(
[a] [float] NULL,
[b] [float] NULL,
[c] [varchar](255) NULL)
#Create a df to insert into guest.MikeTestTable
df <- data.frame(a = c(10, 20, 30),
b = c(20, 40, 60),
c = c("oneT", "twoT", "threeT"))
#Create a connection:
con <- DBI::dbConnect(odbc::odbc(),
.connection_string = "Driver={SQL Server};
server=localhost;
database=SAM;
trustedConnection=true;")
#Try to write contents of df to the table using `dbWriteTable` …Run Code Online (Sandbox Code Playgroud)