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

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

 
阅读更多

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

 

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

分享到:
评论

相关推荐

    达梦数据库_SQL语言手册

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

    spl中数表字段的一般长度

    在数据库设计中,字段长度是指存储数据时所占用的空间大小。合理的字段长度设置不仅能够提高数据处理效率,还能节省存储空间。不同的数据类型有不同的长度设置方法。例如,整数类型的字段通常使用固定长度,而字符串...

    MSSQL数据库获取TEXT字段的内容长度

    特别是对于存储大量文本数据的TEXT字段,我们需要知道其内容的精确长度,以便进行有效的查询、分析和存储管理。本文将详细介绍如何在MSSQL数据库中获取TEXT字段的内容长度,并通过使用DATALENGTH函数提供具体的使用...

    Oracle接收长度大于4000的字符串

    在Oracle数据库中,默认情况下,`VARCHAR2`类型字段的最大长度为4000个字符。当需要处理更长的字符串时(例如,超过4000个字符),可以采用多种方法来解决这一问题。本文将详细介绍如何在.NET环境中处理和传递长度...

    MSSQL中所有字段类型的区别

    它们可以存储汉字和英文字符,最大长度为 4000 个字符。使用 nchar、nvarchar 数据类型时不用担心输入的字符是英文还是汉字,较为方便,但是在存储英文时数量上有些损失。 二、bigint、int、smallint、tinyint 和 ...

    CNMARC格式各字段详解

    CNMARC由一系列固定长度的控制字段和变长的数据字段组成。控制字段主要用于记录与图书相关的管理信息,而数据字段则用于存储描述图书内容的具体信息。 ##### 控制字段 - **001**:记录唯一标识符 - 该字段用以唯一...

    SQL2k字段名的中文解释

    本资源提供了SQL2k字段名的中文解释源码,这将帮助我们加深对SQL语法和数据库管理的理解。 在SQL中,字段名遵循特定的命名规则: 1. 长度限制:字段名最长可达128个字符。 2. 字符限制:可以包含字母、数字和下划线...

    ArcGIS中文字段截断问题解决办法(一键写入注册表).zip

    如果默认的`MaxFieldLength`值过小,无法容纳中文字符的全长度,我们可以将其增大。一般建议将其设置为2048或更大,以确保能容纳大部分中文字段。但是,修改注册表需要谨慎操作,因为错误的操作可能导致系统不稳定...

    java中判断字段真实长度的实例(中文2个字符,英文1个字符)

    Java中判断字段真实长度的实例是针对如何在编程时考虑到中英文字符在长度上的差异,并且给出一个能够在字符串处理时反映出这种差异的实用方法。这个实例中提到的是,中文字符占用的空间为两个英文字符的空间。这个...

    Mysql varchar大小长度问题介绍

    这是因为每个VARCHAR字段前会有一个或两个字节来存储实际内容的长度。对于长度小于255的VARCHAR,只需要1字节表示长度;大于255的需要2字节。这意味着实际内容的最大长度是65535 - 2 = 65533字节。 2. **编码长度...

    Oracle数据库字段类型详解

    与`CHAR` 不同,`VARCHAR2` 只存储实际赋予该列的字符,并且不添加额外的空格,因此通常需要的存储空间比`CHAR` 小。此外,`VARCHAR2` 把所有字符都按双字节处理(除了特定情况外),而`VARCHAR` 只对汉字和其他全角...

    pb中实现字符长度和计算器的实现

    计算器的内部逻辑通常会涉及栈数据结构,用于存储中间结果和操作符。每次用户输入一个运算符,你可以在栈顶放置一个标记表示当前的操作类型。当用户点击等于按钮时,遍历栈,根据操作符的优先级执行相应的计算。这...

    mysql中如何判断当前是字符 mysql判断字段中有无汉字

    在MySQL数据库中,判断字段中是否包含汉字是一个常见的需求,特别是在处理中文字符集的数据时。汉字作为多字节字符,在存储时占用的空间不同于单字节的字母或数字。因此,可以利用MySQL内置的字符串处理函数来检测...

    易语言数据库字段结构编辑源码

    正则表达式支持库则可能用于对输入的数据进行验证,例如检查字段名是否符合规则,或者检查字段长度是否符合数据库的要求。 易语言的学习者可以通过这个源码例程了解到以下几个关键知识点: 1. **扩展界面支持库**...

    得到SQL数据库中所有表字段及字段中文描述.docx

    在SQL数据库中获取所有表的字段及其中文描述是一项常见的需求,这对于数据库管理和数据分析至关重要。以下将详细介绍如何实现这一目标,以及涉及到的相关SQL语法。 在SQL Server 2000中,可以通过以下查询来获取...

    php判断输入不超过mysql的varchar字段的长度范围

    在实际应用中,我们通常需要在将数据插入数据库之前先进行长度验证,以确保不会插入超出varchar字段长度限制的数据。这样可以避免数据插入失败或者数据被截断的问题。比如,如果我们的数据库字段定义为varchar(10),...

    数据库、表、字段的命名规则

    数据库、表、字段的命名规则 数据库、表、字段的命名规则是数据库开发中非常重要的一部分,每个公司或者企业数据库、表、字段等都有自己命名规则。下面我们将详细介绍数据库、表、字段的命名规则。 一、数据库...

Global site tag (gtag.js) - Google Analytics