Срочно нужна помощь по sql
Большая просьба, помочь! Я только недавно начал изучать sql. Установил Microsoft Sql 2019. Импортирую туда таблицу csv для анализа. Импорт проходит успешно, но в итоге в таблице знаки вопроса вместо кириллицы, кирилица в верхней строке отображается корректно. Я пробовал менять кодировку в csv, не помогает. я пробовал импорт тестового csv с кириллицей, также вопросительные знаки. Мне нужно что-то настроить в самом sql?
Ответы (2 шт):
Попробуйте следующее концептуальное решение, основанное на BULK LOAD.
cznames.txt
| ID | NAME |
|---|---|
| 1 | Вася |
| 2 | Петя |
SQL
USE tempdb;
GO
DROP TABLE IF EXISTS dbo.myNameTable;
CREATE TABLE dbo.myNameTable(
ID INT NOT NULL,
NAME NVARCHAR(50) collate Cyrillic_General_100_CI_AS
);
BULK INSERT dbo.myNameTable
FROM 'e:\Temp\cznames.txt'
WITH
(
FIRSTROW = 2,
FIELDTERMINATOR = '\t',
ROWTERMINATOR = '0x0A',
CODEPAGE = '65001' -- is a must for the Cyrillic characters (UTF-8)
);
SELECT * FROM dbo.myNameTable;
-- just to see
SELECT * FROM sys.fn_helpcollations()
WHERE name LIKE 'Cyrillic%';
У вас проблема в кодировке таблицы скорее всего. Вот тут с картинками объясняют, как выбрать правильную кодировку:
Import CSV File Into SQL Server Using SQL Server Management Studio