SQLサーバーからのデータを処理するスクリプトを作成しました。このデータはアラビア語のいくつかの項目の名前を持っています&英語と私は不明な文字を取得し、フレームの結果のように と私はDBMSencoding=utf-8
を使用して "UTF-8"にエンコーディングをcjhangeしようとしましたが、私は同じ結果を得ます。いずれもこの問題の解決に役立つでしょうか?データフレームの結果で不明な文字を取得する
`
dbConnection <- "Driver={SQL Server};Server=.;Database=****;Uid=******;Pwd=****;DBMSencoding=utf-8"
con <- odbcDriverConnect(connection = dbConnection)
Orders <- sqlQuery(con, "SELECT
DOC.ID AS [Transaction]
,CASE
WHEN DOCD.ServiceItemID IS NOT NULL
THEN dbo.RemoveNumericCharacters(CONVERT(NVARCHAR (MAX),SRI.Description))
WHEN DOCD.StockItemID IS NOT NULL
THEN dbo.RemoveNumericCharacters(CONVERT(NVARCHAR (MAX),STI.Description))
END AS Item
,CASE
WHEN DOCD.ServiceItemID IS NOT NULL
THEN 'ServiceItem'
WHEN DOCD.StockItemID IS NOT NULL
THEN 'StockItem'
END AS [ItemType]
FROM Sales.Sls_Documents DOC
INNER JOIN Sales.Sls_DocumentDetails DOCD
ON DOCD.DocumentID = DOC.ID
LEFT JOIN Sales.Sls_ServiceItems SRI
ON SRI.ID = DOCD.ServiceItemID
LEFT JOIN Warehouse.StockItems STI
ON STI.Id = DOCD.StockItemID
WHERE CASE
WHEN DOCD.ServiceItemID IS NOT NULL
THEN SRI.Description
WHEN DOCD.StockItemID IS NOT NULL
THEN STI.Description
END IS NOT NULL")
Orders$Item <- as.character(Orders$Item)
`
のSessionInfo():Rバージョン3.4.3(2017年11月30日)プラットフォーム: x86_64版-W64-MINGW32 が、これは私のコードです/ x64(64ビット)Windows 10 x64(ビルド 16299)
マトリックス製品:デフォルト
ロケール:1 LC_COLLATE = ENGLISH_UNITED States.1252 LC_CTYPE = ENGLISH_UNITED States.1252 LC_MONETARY = ENGLISH_UNITED States.1252 LC_NUMERIC = C [5] LC_TIME = ENGLISH_UNITED States.1252あなたが
'のSessionInfo()'を入力して、あなたの質問に "ロケール" についての部分を貼り付けてください。 – G5W