SQL Server插入中文亂碼

2022-04-16 18:16:04 字數 750 閱讀 9720

如果資料庫的collocation是英文的,欄位是varchar型別,向表中插入中文資料,會出現亂碼。

解決方法:

方法1. 修改varchar 為 nvarchar型別, 並在插入資料前加n,例如: insert into table_name(a) values (n'中文')

方法2. 如果不修改字段型別,還是varchar, 則需要修改資料庫的collocation為 中文,參考

還有一種,在建表時,指定某個欄位的語言,

方法 collate chinese_prc_cs_as_ws

示例:create table test

(a varchar(255) collate chinese_prc_cs_as_ws null, 

b varchar(255) collate sql_latin1_general_cp1_ci_as null 

)測試:

insert test values('中文','中文')

插入後 字段 a 為 中文 ,b 為 ??

若是使用儲存過程插入資料的話,需要將對應的引數型別改為nvarchar。

示例:create procedure [dbo].[export_create] 

@c_hm nvarchar(128) 

as insert into export 

([c_cch]) 

values 

(@c_hm) 

在**中,c_cch為varchar型別。

SQL Server 插入中文資料時出現亂碼情況

此時需要把sql server的模式修改為單使用者模式才可修改資料庫的collocation屬性 chinese prc ci as,即mysql中的utf8.執行sql語句。步驟 1.把sql server修改為單使用者模式 alter database qicq set single user ...

Mysql 插入中文亂碼

當向 mysql 資料庫插入一條帶有中文的資料形如 insert into employee values null,張三 female 1995 10 08 2015 11 12 sales 2000,是個好員工!出現亂碼時,可以使用語句 show variables like character...

mysql插入中文亂碼

因為測試的緣故,手機端向後台資料庫插入了一條資料,其中帶有中文的全部亂碼,顯示為?究竟怎麼回事呢?一般出現這種情況,先執行show variables like character 查詢一下資料庫字元編碼設定 顯示資料如下 variable name value character set clie...