• 带下标的数据如何保存到SQL SERVER数据库中


    SQL SERVER 2005 我有个字段想保存带下标的数据,如M2(后面的2是下标),数据类型是nvarchar(50),用nvarchar来保存带上标的数据是可以保存的(如mg/m²),求保存带下标的数据该如何保存?

    以下是在CSDN中问题帖子的有用回复: 

    有用的回复1:

      1、转成图片保存
      2、拆分成两个字段保存,一个一般的,一个下标

    回复2:

     定义规则,过滤吧
     比如上标都 <pi>
     下标都 <sub>
     前台程序一般都能显示的,多一个判断而已

    回复3:

      估计你那个平方符号本来就有这个现成的字符,所以能储存显示,不应该算上标
    而别的字符你即使弄成上标也不能储存
    不信你把a弄成上标试试
    下标本来就没有这种现成的字符,所以不行

    回复4:

      引用 22 楼 billpu 的回复:

    看看SQL codeCREATE TABLE tb (col1 NVARCHAR(10))INSERT tb SELECT  N'mg/m²' UNION ALL SELECT '1₂'SELECT * FROM tb
    SQL code?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    CREATE TABLE tb (col1 NVARCHAR(10))
    INSERT tb SELECT  N'mg/m²' UNION ALL 
    SELECT N'1₂'
    SELECT FROM tb
      
    drop table tb
      
    /*
    col1       
    ---------- 
    mg/m²
    1₂
      
    (所影响的行数为 2 行)
    */



    还真能行,厉害,以前没用过这种下标的数据.

    这个就是word里粘贴出来的呀 

    to 楼主:首先这个下标是一个字,或者字符,我认为之所以网页里可以显示,而sqlserver不能显示的原因是网页比如csdn采用的编码集是(可变字节)utf-8,而sqlserver采用的是双字节(ucs-2),而这个下标是在ucs-2之外的(我估计在3字节到4字节当中),在utf-8之内的,所以sqlserver不能保存这个字.
    不一定对,仅供参考 

    CREATE TABLE tb (col1 NVARCHAR(10))
    INSERT tb SELECT  N'mg/m²' UNION ALL
    SELECT '1₂'
    SELECT * FROM tb

    页面来源:http://bbs.csdn.net/topics/350228345

  • 相关阅读:
    Android 面试题(答案最全)
    Android Studio导入github下载的工程
    Android清除本地数据缓存代码
    内存缓存LruCache实现原理
    OD调试器调试Delphi程序按钮事件断点方法
    OllyDBG找到按钮的处理函数
    delphi中Record 和Packed Record的区别
    这些年,我们自己换的滤芯
    大众车机天宝187A Hack笔记
    Delphi中DLL的创建和使用
  • 原文地址:https://www.cnblogs.com/activities/p/3088658.html
Copyright © 2020-2023  润新知