簡體   English   中英

將 UTF-8 文本文件中的 varchar 插入到 MSSQL 表中

[英]INSERT varchar from a UTF-8 text file into MSSQL table

我使用以下查詢將文本文件插入到數據庫中:

聲明@json NVARCHAR(MAX)

SELECT @json = BulkColumn FROM OPENROWSET(BULK 'c:\\mydata.db', SINGLE_CLOB) AS [插入]

INSERT INTO [neDB].[dbo].[tbl_api] (
    number
    ,DESC
    ,inf
    )
SELECT number
    ,DESC
    ,inf
FROM OPENJSON(CONCAT (
            '['
            ,REPLACE(@json, CONCAT (
                    '}'
                    ,CHAR(10)
                    ,'{'
                    ), '},{')
            ,']'
            )) WITH (
        number VARCHAR(200) '$.number'
        ,DESC VARCHAR(50) '$.desc'
        ,inf VARCHAR(150) '$.inf'
        )

文件“mydata.db”是 UTF-8,其中包含 ü、ä、ö 等,它們將在表中存儲為“ü”、“ö”...。 如果我將文件轉換為 ANSI,一切看起來都很好,但我不想一直轉換文件。 有沒有辦法設計查詢直接插入UTF-8?

嘗試添加參數

CODEPAGE = '65001'

OPENROWSET調用,這是 UTF-8 ( docs ) 的代碼頁。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM