Last chance! 50% off unlimited learning
Sale ends in
get
,
assign
,
exists
,
remove
,
objects
및
names
.
단, 데이터베이스 엔진에서 원격으로 실행되는 코드를
생성합니다.## S3 method for class 'OraConnection,character':
dbReadTable(conn, name, schema = NULL, row.names = NULL, ...)
## S3 method for class 'OraConnection,character,data.frame':
dbWriteTable(conn, name, value, row.names = FALSE, overwrite = FALSE,
append = FALSE, ora.number = TRUE, schema = NULL, ...)
## S3 method for class 'OraConnection,character':
dbExistsTable(conn, name, schema = NULL, ...)
## S3 method for class 'OraConnection,character':
dbRemoveTable(conn, name, purge = FALSE, schema = NULL, ...)
## S3 method for class 'OraConnection':
dbListTables(conn, schema = NULL, all = FALSE, full = FALSE, ...)
## S3 method for class 'OraConnection,character':
dbListFields(conn, name, schema = NULL, ...)
OraConnection
데이터베이스 ���속 객체입니다.dbListTables
에 대한 문자열의 벡터)을 지정하는
대소문자를 구분하는 문자열입니다.dbReadTable
의 경우 이 인수는 data.frame 출력에서 row.names
(으)로 사용할
DBMS 테이블의 열을 지정하는 논리 벡터, 문자열 또는
인덱스일 수 있습���다(NULL
은(는) 출력에서 열을
row.names
(으)로 사용할 수 없도록 지정).
기본값은 NULL
입니다.
db
data.frame
입니다. (지원되는
열 유형은 세부 정보 섹션을 참조하십시오.)FALSE
입니다.FALSE
입니다.NUMBER
또는 BINARY_DOUBLE
열을
포함하는 테이블을 생성할지 여부를 지정하는
논리 값입니다. Oracle TRUE
값을 포함하는 테이블을 생성하려면
NUMBER
을(를) 지정하고, Oracle FALSE
값을 포함하는 테이블을 생성하려면
BINARY_
PURGE
���션을 SQL DROP TABLE
문에 추가할지 여부를 지정하는
논리 값입니다.all
인수가 TRUE
일 때 출력은 테이블 이름 다음에 오는
스키마 이름이 포함된 벡터입니다. 출력에 matrix(..., ncol = 2)
을(를)
사용하면 각 행이 테이블에 해당하고 열이 스키마 이름 및
테이블 이름을 각각 나타내는 행렬이
생성됩니다.data.frame
의 경우 dbReadTable
;
vector
및 dbListTables
의 경우
dbListFields
;
테이블 존재 여부를 나타내는
logical
의 경우 dbExistsTable
;
그렇지 않으면 작업의 성공 시 또는 예외 사항 발생 시 TRUE
입니다.ABC
및 abc
테이블 이름은 서로 다릅니다. 모든 데이터베이스
스키마 객체 이름은 해당 SQL 문이 생성될 때 이름이 큰따옴표로
묶이기 때문에 큰따옴표를 포함하��� 않아야 합니다.
dbReadTable
, dbGetQuery
, fetch
및 dbWriteTable
과(와) 같은 \pkg{ROracle}
메소드는 R과 Oracle 데이터 유형 사이에
다음과 같은 매핑을 사용합니다.
logical
및integer
이(가) OracleINTEGER
에 매핑됨numeric
인수가NUMBER
인 경우ora.number
이(가)
OracleTRUE
에 매핑됨 또는BINARY_DOUBLE
인 경우 OracleFALSE
에
매핑됨character
이(가) OracleVARCHAR2(4000)
에 매핑됨Date
및POSIXct
이(가) OracleDATE
에 매핑됨
\pkg{ROracle} - ROracle 패키지R- R 응용 프로그램POSIXct
- POSIXct 클래스TIMESTAMP
TIMESTAMP WITH TIME ZONE
TIMESTAMP WITH LOCAL TIME ZONE
difftime
이(가) OracleINTERVAL DAY TO SECOND
에 매핑됨list
벡터의raw
이(���) OracleRAW(2000)
에 매핑됨factor
)이character
(으)로
변환됨dbWriteTable
은(는) 현재 트랜잭션은 물론 삽입하는
데이터도 항상 자동으로 커밋합니다. 즉 기존 테이블에 행을 추가할 경우에도
DDL 문으로 작동합니다.Oracle
,
dbDriver
,
dbConnect
,
dbSendQuery
,
dbGetQuery
,
fetch
,
dbCommit
,
dbGetInfo
.con <- dbConnect(Oracle(), "scott", "tiger")
if (dbExistsTable(con, "FOO", "SCOTT"))
dbRemoveTable(con, "FOO")
foo <- dbReadTable(con, "EMP")
row.names(foo) <- foo$EMPNO
foo <- foo[,-1]
dbWriteTable(con, "FOO", foo, row.names = TRUE)
dbWriteTable(con, "FOO", foo, row.names = TRUE, overwrite = TRUE)
dbReadTable(con, "FOO", row.names = 1)
dbGetQuery(con, "delete from foo")
dbWriteTable(con, "FOO", foo, row.names = TRUE, append = TRUE)
dbReadTable(con, "FOO", row.names = 1)
dbRemoveTable(con, "FOO")
dbListTables(con)
dbListFields(con, "EMP")
if (dbExistsTable(con, "RORACLE_TEST", "SCOTT"))
dbRemoveTable(con, "RORACLE_TEST")
# example of POSIXct usage
# A table is created using:
createTab <- "create table RORACLE_TEST(row_num number, id1 date,
id2 timestamp, id3 timestamp with time zone,
id4 timestamp with local time zone )"
dbGetQuery(con, createTab)
# Insert statement
insStr <- "insert into RORACLE_TEST values(:1, :2, :3, :4, :5)";
# Select statement
selStr <- "select * from RORACLE_TEST";
# Insert time stamp without time values in POSIXct form
x <- 1;
y <- "2012-06-05";
y <- as.POSIXct(y);
dbGetQuery(con, insStr, data.frame(x, y, y, y, y));
# Insert date & times stamp with time values in POSIXct form
x <- 2;
y <- "2012-01-05 07:15:02";
y <- as.POSIXct(y);
z <- "2012-01-05 07:15:03.123";
z <- as.POSIXct(z);
dbGetQuery(con, insStr, data.frame(x, y, z, z, z));
# Insert list of date objects in POSIXct form
x <- c(3, 4, 5, 6);
y <- c('2012-01-05', '2011-01-05', '2013-01-05', '2020-01-05');
y <- as.POSIXct(y);
dbGetQuery(con, insStr, data.frame(x, y, y, y, y));
dbCommit (con)
# Selecting data and displaying it
res <- dbGetQuery(con, selStr)
res[,1]
res[,2]
res[,3]
res[,4]
res[,5]
df <- data.frame(A=c(0,1,NaN,4), B=c(NA, 2,3,NaN))
con <- dbConnect(Oracle(), "scott", "tiger")
dbWriteTable(con,"TEST", df, row.names = FALSE, ora.number=FALSE)
Run the code above in your browser using DataLab