1

:)) それで、JDBCを使用してDBに接続しました

conn <- dbConnect(drv, "jdbc:oracle:thin:...", "DJULIA", "..."
                    , DBMSEncoding='UTF-8')

SQL クエリを使用してデータベースから情報を抽出した後、data.frame 内の文字が正しいエンコーディングでエンコードされていないという問題が発生したため、data.frame からの情報を行列を作成し、それに応じてエンコードします。

miau <- dbGetQuery(conn, "select * from table
where product_id = x")
  miau1 <- t(rep(0,length(miau)))
  i <-1
  while (i <= length(miau))
  {

  if(is.character(miau[,i]))
  {
    miau1[i] <- enc2utf8(miau[,i])
  }
  else
    {
      miau1[i] <- miau[,i]
    }
  i<-i+1;
  }

これはまったく問題なく動作しますが、理解できません: data.frame の文字が正しい形式で表示されないのはなぜですか? これが data.frame でどのように見えるかの例を次に示します。

CLIENT_ID PRODUCT_ID BRAND               SEASON           NAME        NAME_EN 
1         1   56527401 oodji Îñåíü-çèìà 2013/2014 Êóðòêà êîæàíàÿ Êóðòêà êîæàíàÿ

そして行列として

     [,1] [,2]       [,3]    [,4]                   [,5]             [,6]
[1,] "1"  "56527401" "oodji" "Осень-зима 2013/2014" "Куртка кожаная" "Куртка кожаная" 
4

0 に答える 0