数据表存储不固定字段 像这样不固定的数据库如何进行存储
一、数据库表中字段类型有哪些
数据库表中字段类型有二进制数据类型、字符数据类型、数字数据类型等其中类型。具体类型如下所示:
1、二进制数据类型
Binary、Var**nary、Image
2、字符数据类型
Char,Varchar和 Text
3、Unicode数据类型
包括Nchar,Nvarchar和Ntext
4、日期和时间数据类型
包括Datetime, Smalldatetime, Date, TimeStamp
5、数字数据类型
数字数据类型包括正数和负数、小数和整数
6、货币数据类型
表示正的或者负的货币数量。
7、特殊数据类型
特殊的数据类型有3种,即Timestamp、Bit和 Uniqueidentifier。
二、像这样不固定的数据库如何进行存储***
主表,字段:主键,计算机应用技术专业介绍,计算机网络技术专业介绍
计算机类是一个子表,字段:主表主键,计算机类类别键
电子类是一个子表,字段:主表主键,计算机电子类键
类别信息表:信息主键,信息类容(存计算机类别信息,电子类,以及其他类别信息)
三、10位字段是什么意思
意思是指字段是数字型,长度为10,小数为两位。
(1)二进制数据类型
二进制数据包括 Binary、Var**nary和 Image
Binary数据类型既可以是固定长度的(Binary),也可以是变长度的。
Binary[(n)]是 n位固定的二进制数据。其中,n的取值范围是从 1到 8000。其存储空间的大小是 n+ 4个字节。
Var**nary[(n)]是 n位变长度的二进制数据。其中,n的取值范围是从 1到 8000。其存储空间的大小是 n+ 4个字节,不是n个字节。
在 Image数据类型中存储的数据是以位字符串存储的,不是由 SQL Server解释的,必须由应用程序来解释。例如,应用程序可以使用BMP、TIEF、GIF和 JPEG格式把数据存储在 Image数据类型中。
(2)字符数据类型
字符数据的类型包括 Char,Varchar和 Text
字符数据是由任何字母、符号和数字任意组合而成的数据。
Varchar是变长字符数据,其长度不超过 8KB。Char是定长字符数据,其长度多为 8KB。超过 8KB的ASCII数据可以使用Text数据类型存储。例如,因为 Html文档全部都是 ASCII字符,并且在一般情况下长度超过 8KB,所以这些文档可以 Text数据类型存储在SQL Server中。
(3)Unicode数据类型
Unicode数据类型包括 Nchar,Nvarchar和Ntext
在 Microsoft SQL Server中,传统的非 Unicode数据类型允许使用由特定字符集定义的字符。在 SQL Server安装过程中,允许选择一种字符集。
使用 Unicode数据类型,列中可以存储任何由Unicode标准定义的字符。在 Unicode标准中,包括了以各种字符集定义的全部字符。使用Unicode数据类型,所占用的空间是使用非Unicode数据类型所占用的空间大小的两倍。
在 SQL Server中,Unicode数据以 Nchar、Nvarchar和 Ntext数据类型存储。使用这种字符类型存储的列可以存储多个字符集中的字符。当列的长度变化时,应该使用Nvarchar字符类型,这时多可以存储 4000个字符。
当列的长度固定不变时,应该使用 Nchar字符类型,同样,这时多可以存储4000个字符。当使用 Ntext数据类型时,该列可以存储多于 4000个字符。
(4)日期和时间数据类型
日期和时间数据类型包括 Datetime和 Smalldatetime两种类型
日期和时间数据类型由有效的日期和时间组成。例如,有效的日期和时间数据包括“4/01/98 12:15:00:00:00 PM”和“1:28:29:15:01AM 8/17/98”。前一个数据类型是日期在前,时间在后;后一个数据类型是时间在前,日期在后。
在 Microsoft SQL Server中,日期和时间数据类型包括Datetime和 Smalldatetime两种类型时,所存储的日期范围是从 1753年 1月 1日开始,到9999年12月 31日结束(每一个值要求 8个存储字节)。
使用 Smalldatetime数据类型时,所存储的日期范围是 1900年 1月 1日开始,到 2079年 12月 31日结束(每一个值要求 4个存储字节)。
日期的格式可以设定。设置日期格式的命令如下:
Set DateFormat{format|@format _var|
其中,format|@format_var是日期的顺序。有效的参数包括 MDY、DMY、YMD、YDM、MYD和 DYM。在默认情况下,日期格式为MDY。
例如,当执行 Set DateFormat YMD之后,日期的格式为年月日形式;当执行 Set DateFormat DMY之后,日期的格式为日月有年形式
(5)数字数据类型
数字数据只包含数字。数字数据类型包括正数和负数、小数(浮点数)和整数
整数由正整数和负整数组成,例如 39、25、0-2和 33967。在 Microsoft SQL Server中,整数存储的数据类型是 Int,Smallint和 Tinyint。Int数据类型存储数据的范围大于 Smallint数据类型存储数据的范围,而 Smallint据类型存储数据的范围大于Tinyint数据类型存储数据的范围。
使用 Int数据类型存储数据的范围是从-2 147 483 648到 2 147 483 647(每一个值要求4个字节存储空间)。使用 Smallint数据类型时,存储数据的范围从-32 768到 32 767(每一个值要求2个字节存储空间)。使用Tinyint数据类型时,存储数据的范围是从0到255(每一个值要求1个字节存储空间)。
精确小数数据在 SQL Server中的数据类型是 Decimal和 Numeric。这种数据所占的存储空间根据该数据的位数后的位数来确定。Decimal数据类型使用128位来表示值来用作数值计算。
在SQL Server中,近似小数数据的数据类型是 Float和 Real。例如,三分之一这个分数记作0.333333,当使用近似数据类型时能准确表示。因此,从系统中检索到的数据可能与存储在该列中数据不完全一样。
扩展资料:
1、货币数据类型
在 Microsoft SQL Server中,货币数据的数据类型是Money和 Smallmoney
Money数据类型要求 8个存储字节,Smallmoney数据类型要求 4个存储字节。
2、特殊数据类型
特殊数据类型包括前面没有提过的数据类型。特殊的数据类型有3种,即 Timestamp、Bit和 Uniqueidentifier。
Timestamp用于表示SQL Server活动的先后顺序,以二进投影的格式表示。Timestamp数据与插入数据或者日期和时间没有关系。Timestamp类型的字段是一个基于系统时钟在数据行被创建或修改时由SQL Server自动填充的值。
Bit由 1或者 0组成。当表示真或者假、ON或者 OFF时,使用 Bit数据类型。例如,询问是否是每一次访问的客户机请求可以存储在这种数据类型的列中。
Uniqueidentifier由 16字节的十六进制数字组成,表示一个全局唯一的。当表的记录行要求唯一时,GUID是非常有用。例如,在客户标识号列使用这种数据类型可以区别不同的客户。
细节区分
1、CHAR。CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间。
2、VARCHAR。存储变长数据,但存储效率没有CHAR高。如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 VARCHAR(10)是合算的。VARCHAR类型的实际长度是它的值的实际长度从空间上考虑,用varchar合适;从效率上考虑,用char合适,关键是根据实际情况找到权衡点。
3、TEXT。text存储可变长度的非Unicode数据,大长度为2^31-1(2,147,483,647)个字符。
4、NCHAR、NVARCHAR、NTEXT。这三种从名字上看比前面三种多了个“N”。它表示存储的是Unicode数据类型的字符。
我们知道字符中,英文字符只需要一个字节存储就足够了,但汉字众多,需要两个字节存储,英文与汉字同时存在时容易造成混*,Unicode字符集就是为了解决字符集这种不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两个字节表示。
nchar、nvarchar的长度是在1到4000之间。和char、varchar比较起来,nchar、nvarchar则多存储4000个字符,不论是英文还是汉字;而char、varchar多能存储8000个英文,4000个汉字。可以看出使用nchar、nvarchar数据类型时不用担心输入的字符是英文还是汉字,较为方便,但在存储英文时数量上有些损失。
所以一般来说,如果含有中文字符,用nchar/nvarchar,如果纯英文和数字,用char/varchar。
参考资料:百度百科——SQL数据类型
四、数据库中任一字段类型均不支持超长字符串
数据库字段类型中的字符串类型一定要声明长度吗
1、不是,但默认长度为1,char的长度介于1到8000,且为固定长度。如果你的数据长度为1已经满足要求则可以不定义。定义多长,就会有多长。
2、是的,你需要指定一个这个字段所能保存的大长度,一般在定义字段时,可以估计一下这个字段的长度,因为你已经知道它的用途了。
3、不是必须指定。如果没有在数据定义或变量声明语句中指定n,则默认长度为1。如果在使用CAST和CONVERT函数时未指定n,则默认长度为30。
java中String的字符串太大插不进数据库怎么办好像是sql的长度不能超过4000字符,long类型现在已经不推荐使用,建议使用clob字段。
把数据库中的char类型改为nvarchar2类型,然后就可以把String类型的数据直接存进去了。如果你用的是ORACLE数据库。--。
根据字符串分割函数,先将这些数据转化为datatable类型,然后插入数据库。之前实现过,但是现在忘了,具体的思路就是这个样子。你自己可以试着实现一下。。
你在这里stmt.executeUpdate(sql);打个断点,然后把SQL的值拷贝出来,放到数据库里直接运行一下,什么时候拷贝出来的SQL直接运行没问题了,那么程序也就没问题了。
你可以将字符串数组序列化后转换为字符串,再保存到数据库中的某一个字段中。取得数组时,可以先读取某一个字段取得字符串后再反序列化得到数组。
数据库表中字段类型有哪些?1、.文本型(Text):用于输入文本或文本与数字相结合的数据,是常用的字段类型之一,又分为短文本和长文本两种,区别就是短文本的字符长度不超过255个字符(字节)。
2、Access数据库为字段提供了10种数据类型,具体如下:1.文本型(Text):用于输入文本或文本与数字相结合的数据,长为255个字符(字节),默认值是50。
3、数据库中常用的字段类型有:字符型、数值型、逻辑型、备注型。这四种是常用的。
4、字段(field)一个成员,它表示与对象或类关联的变量。在数据库中,大多数时,表的“列”称为“字段”,每个字段包含某一专题的信息。
5、Access允许九种数据类型:文本、备注、数值、日期/时间、货币、自动编号、是/否、OLE对象、超级链接、查询向导。在表的设计视图中,每一个字段都有设计类型。
6、SQL通用数据类型数据库表中的每个列都要求有名称和数据类型。
数据库里面能有2000的数据类型吗1、mysql0版本以前,varchar()大能定义255。0以上版本支百持65535字节长度,utf8编码下多支持21843个字符度(不为空)。mysql0版本以前,varchar(2000)不正确,0以上版本正确。
2、CHAR()CHAR数据类型是一种有固定长度和大长度的字符串。存储在数据类型为CHAR字段中的数据将以空格的形式补到大长度。长度定义在1——2000字节之间。
3、raw(n)n=1to2000可变长二进制数据,在具体定义字段的时候必须指明大长度n,Oracle8i用这种格式来保存较小的图形文件或带格式的文本文件,如MiceosoftWord文档。
4、SQL用于各种数据库的数据类型:MySQL数据类型:在MySQL中,有三种主要的类型:Text(文本)、Number(数字)和Date/Time(日期/时间)类型。Text类型。Number类型。这些整数类型拥有额外的选项UNSIGNED。
5、这个看你有多少成本了,有足够成本的话,用int类型,默认长度11,要是严谨点的话就用**allint,这个范围在0-65535够用了。
6、在一个数据库里,timestamp值是唯一的Uniqueidentifier特殊数据型Uniqueidentifier数据类型用来存储一个全局唯一标识符,即GUID。GUID确实是全局唯一的。这个数几乎没有机会在另一个系统中被重建。
数据库中的一个字段的数据大小不定如何设置字段的长度查询快又节省...1、另外,一个汉字在Oracle数据库里占多少字节跟数据库的字符集有关,UTF8时,长度为三。
2、将ACCESS选项中的“表设计”的默认字段类型和默认字段大小分别设置成数字和双精度型即可。
3、就一个一个的回答吧主键要求大长度为6位下一个字段大长度为100位下一字段大长度为20位。。