测试验证特殊符号能否存入数据库中:
其中,像一些普通单位符号比如“ ° ′〃﹩ $ ﹠ & £¥ ‰ % ℃ ¤ ¢℉”可以正常录入没有问题,但是万分号“?”之上就不可以了,录入后显示?;
一些数字符号录入没有问题,包括古希腊数字字符和圆圈字符等,例如“ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ①②③④⑤⑥⑦⑧⑨⑩⒈⒉⒊⒋ ⒌⒍⒎⒏⒐⒑⒒⒓⒔⒕⒖⒗⒘⒙⒚⒛⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂⒃⒄⒅⒆⒇㈠㈡㈢㈣㈤㈥㈦㈧㈨㈩ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫ”;
但是录入数字单位上下标符号,是不行的,其中上标“o 1 2 3”录入直接显示数字,其他上标和下标“? ? ? ? ? ? ”录入后显示?无法读取,而这种分号数字单位“? ? ? ? ? ? ? ? ?”录入后显示?无法读取
解决:更改数据类型为nvarchar,且插入或更改数据时,引号前+“N”,那么可以插入特殊符号字符,例:
更改:UPDATE a SET a.name2=N‘b?‘from test a WHERE zid=14
插入:INSERT INTO test(name,name2) VALUES(N‘o 1 2 3 ? ? ????‘,N‘ ? ‰ ? ? ℅ ?‘)
Name是varchar类型,name2是nvarchar类型