`
zengshaotao
  • 浏览: 757889 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

字段长度小,存储了汉字的一半

 
阅读更多

都设计过数据库,里面的字段也都接触过,设计时没有考虑周全,或者由于实际需求的变更,很多字段的使用会发生一些变化,比如它的长度。有时候是存储id值,但是由于各种原因,实际没用上,后来又用来存储中文了。一连串的变化,让你立马头晕。后期很隐蔽的问题慢慢就来了。

 

首先 是varchar长度是30,这个存储id没有问题,后来要存储中文,也即实际需求有变化,很明显,30的长度不够的,可是我们可能很少注意到。于是,真正存储时,可能发生字符截取的情况,假定字段值来自于excel模板(有些poi只能读取2003的),填写的内容超过30个汉字,截取的内容可能是一个中文表示的一半。所以最后读取出来会带有?,再在做insert语句拼接的时候,容易出现少单引号的问题,导致拼接的sql语法不正确,最终也就无法执行了

分享到:
评论

相关推荐

    达梦数据库_SQL语言手册

    小决定,字符类型最大长度和页面大小的对应关系请见下表支持按字节存放字符 串 表 数据库页面大 最大长度 类型 语法: 长度 功能:与 相同。 类型 语法: 长度 功能 数据类型指定变长字符串,用法类似 ...

    Mysql varchar大小长度问题介绍

    1、限制规则 字段的限制在字段定义的时候有以下规则: a) 存储限制 varchar 字段是将实际内容单独存储在聚簇索引之外,内容开头用1到2个字节表示实际长度(长度超过255时需要2个字节),因此最大长度不能超过65535...

    arcgis工具

    Ctrl+A:方位 Ctrl+F:偏转 Ctrl+L:长度 Ctrl+D:X,Y增量 Ctrl+G:方位/长度 Ctrl+P:平行 Ctrl+E:垂直 Ctrl+T:切线 Ctrl+Delete:删除草图 F2:完成草图 F6:绝对X,Y坐标 F7:线段偏转 T:显示容限 已经输入的...

    oracle支持的数据类型

    字段类型 中文说明 限制条件 其它说明 CHAR 固定长度字符串 最大长度2000 bytes VARCHAR2 可变长度的字符串 最大长度4000 bytes 可做索引的最大长度749 NCHAR 根据字符集而定的固定长度字符串 最大长度2000 bytes ...

    [详细完整版]数据库文档.docx

    详细信息 学生表(Student) 字段名 字段中文名 数据类型 数据长度 字段描述 内容 Sid 学生ID Int 9 PK 学生自增主键 SName 学生姓名 Varchar 6 SAge 学生年龄 Int 3 SGrender 学生性别 Int 1 下拉列表 1:女,2:男 SFid...

    orcale常用命令

    8、存储函数和过程 查看函数和过程的状态 SQL>select object_name,status from user_objects where object_type='FUNCTION'; SQL>select object_name,status from user_objects where object_type='PROCEDURE';...

    N字符在Sql Server字段类型中的重要性概述

    Unicode字符集就是为了解决字符集这种不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两...存储大小为输入数据的字节的实际长度,而不是 n 个字节。 nvarchar(n) 包含 n 个字符的可变长度 Unico

    多语言自动翻译脚本 中文翻译英文 python 自动翻译

    ['中文表述', '英文翻译', '储存位置', '文本字段长度'] 2 ['组织单位', 'Organizational unit', '', '/'] 3 ['对象缩写', 'Object abbreviation', '', '/'] 4 ['对象名称', 'Object name', '', '/'] 5 ['定界日期',...

    SQL中varchar和nvarchar的基本介绍及其区别

    varchar(n) 长度为 n 个字节的可变长度且非 Unicode 的字符数据。n 必须是一个介于 1 和 8,000 之间的数值。...如字段值只是英文可选择varchar,而字段值存在较多的双字节(中文、韩文等)字符时用nva

    用JavaScript计算在UTF-8下存储字符串占用字节数

    最近和JavaScript纠缠上...偷懒一点的办法是将验证代码中最大长度设置为数据库中对应字段的长度的1/3,但是这样准确来说有点不合适。 所以想办法在JavaScript中判断在UTF-8下存储的String的字节数,在网上找到很多关于

    数据库设计规范.pdf

    UTF8字符集存储汉字占⽤3个字节,存储英⽂字符占⽤⼀个字节 校对字符集使⽤默认的utf8mb4_general_ci。特别对于使⽤GUI⼯具设计表结构时,要检查它⽣成的SQL定义 连接的客户端也使⽤utf8,建⽴连接时指定charset或...

    执法案件管理系统-数据库设计.docx

    命名 4 2.1 语言 4 2.2 大小写 4 2.3 单词分隔 4 2.4 保留字 4 2.5 命名长度 4 2.6 字段名称 5 3. 命名规范 5 3.1 命名规范概述 5 3.2 具体业务表名命名情况 5 4. 数据库设计 6 4.1 案件信息 6 4.2 立(销)案申请 ...

    数据库的设计和管理规范.doc

    字段名称必须有相应的意义且长度最好 不要超过30个字符。例如:USER_NUMBER。数据模型描述同一个对象属性的字段在不同的 数据表中要使用相同的名称,如:用户手机号码在A、B两个不同的数据表中都使用,那 么名称都...

    基于SQL Server中char,nchar,varchar,nvarchar的使用区别

    对于程序中的一般字符串类型的字段,SQL Server中有char、varchar、nchar、nvarchar四种类型来对应,那么这四种类型有什么区别呢,这里做一下对比。 1.定长或变长 所谓定长就是长度固定,当要保存的数据长度不够时将...

    MySQL数据类型varchar详解

    1、varchar(N)的逻辑意义从MySQL4.1开始,varchar (N)中的N指的是该字段最多能存储多少个字符(characters),不是字节数。不管是一个中英文字符或者数字、或者一个汉字,都当做一个字符。在4.1之前,N表示的是最大...

    SQLServer数据库设计规范.txt

    SQLServer数据库设计规范 作者:佚名 厚朴教育来源:网络 点击数:1446 更新时间:2008-12-2 1 相关的设计规范: 1.1 采用有意义的字段名 尽可能地把字段描述的清楚些。当然,也别做过头了,比如...

    开源免费跨平台密码管理软件 KeeWeb 1.18.1 中文免费版.zip

    而且它们将以比普通字段更安全的方式存储在内存中。 密码生成器:生成任意长度的密码,仅包含所需的符号。 脱机访问:保存文件以供脱机使用,即使是从 Dropbox 打开的文件也是如此。您始终可以访问离线版本,更改将...

    DDR4 SPD 标准协议

    由于SPD eeprom的存储容量有限,因此采用了多种技术进行优化这些字节的使用,包括覆盖和运行长度有限的编码。 为了允许最大的灵活性随着设备的发展,本文档中描述的SPD字段可能支持设备配置和不包括在JEDEC DDR4 ...

    Firebird数据库中文版

    它是一个INT64的长度,因此,它可以用在一个事务中,也可以用在其它很多方面。 只读数据库: 我们可以把数据库存放在CD中,形成一个只读数据库。如果我们的应用程序 也在光盘上,再加上嵌入式的FB数据库服务器,便...

    VFP 6.0 教程2

    备注型:又称内存型,它的长度随输入数据的长度而定,它的存储和表中其他数据是分开的,存放在扩展名为.FPT的文件中。 通用型:可以链接或嵌入OLE对象,如由其他应用程序创建的电子表格、WORD文档、图片。当链接OLE...

Global site tag (gtag.js) - Google Analytics