R(RMariaDB)/R의 정수 변환을 통해 MySQL/MariaDB를 쿼리할 때 숫자가 변경됩니다.
R에서 RmariaDB 및 DBI를 통해 원격 MariaDB 데이터베이스에 연결할 수 있었습니다.하지만 현재 R을 통해 데이터베이스를 조회할 때 이상한 번호 변경이 발생하고 있습니다.차이점을 설명하겠습니다.
다음 명령을 사용하여 데이터베이스에 간단한 항목 하나를 삽입했습니다.
INSERT INTO respondent ( id, name ) VALUES ( 2388793051, 'testuser' )
원격 서버에서 이 데이터베이스에 직접 연결하고 다음과 같은 문을 실행하는 경우:
SELECT * FROM respondent;
이러한 가치를 제공합니다.
ID: 2388793051, 이름: 테스트 사용자
그래서 저도 R을 통해 데이터베이스에 연결할 수 있어야 하고 같은 결과를 받을 수 있어야 합니다.그래서 R에서 다음 코드를 실행할 때 위에 표시된 삽입 및 저장된 정보를 수신할 것으로 예상됩니다.
library(DBI)
library(RMariaDB)
conn <- DBI::dbConnect(drv=RMariaDB::MariaDB(), user="myusername", password="mypassword", host="127.0.0.1", port="1111", dbname="mydbname")
res <- dbGetQuery(conn, "SELECT * FROM respondent")
print(res)
그러나 이 쿼리의 결과는 다음과 같습니다.
id name -1906174245 testuser
보시는 것처럼 데이터베이스에 저장된 2388793051이 아닌 -1906174245입니다.나는 id-field의 이 이상한 정수 변환을 이해할 수 없습니다.누가 이 문제가 어떻게 발생하고 어떻게 해결할 수 있는지 설명해 주시겠습니까?
편집: 문제가 되지 않을 것으로 예상되지만, 알려드리고자 합니다. SSH 터널을 사용하여 로컬에서 원격 컴퓨터로 지정된 포트를 통해 연결할 수 있습니다.
솔루션: 데이터베이스 사양에서 응답자의 ID를 INT 대신 BIGINT로 이미 지정한 것이 차이점입니다.@Jonny Crunch 덕분에
언급URL : https://stackoverflow.com/questions/54872112/numbers-change-when-querying-mysql-mariadb-through-r-rmariadb-integer-convers
'programing' 카테고리의 다른 글
심포니 4와 교리:경고: 쿼리 패킷을 보내는 동안 오류가 발생했습니다.PID=2989 (0) | 2023.08.12 |
---|---|
Centos 7에서 mysql 설치 문제 (0) | 2023.08.12 |
앱을 보다 전문적으로 만드는 기능/기능은 무엇입니까?코딩 취미용 말 (0) | 2023.08.12 |
이전 커밋에 파일을 추가하는 방법은 무엇입니까? (0) | 2023.08.12 |
두 가지 기준 SQL을 기준으로 특정 행 위와 아래(인접 행)의 행 가져오기 (0) | 2023.08.12 |