数据库的char(n)

Mysql中的char(n)或者varchar(n) 其中的n就是代表列,不代表字节!

varchar(n)其中的n最多是65535 , 应该在创建表的同时,指定表的编码方式为latin1,因为latin1中的一个字符就占1个字节。
这个65535中,有2个字节,用来存放列中内容的长度。还有一个字节存放NULL值! 所以剩下65532个字节.

auto_increment  自动增长约束.

注意, 不能只给某个列添加自增长约束,要加自增长,首先列必须是一个键(主键约束或唯一性约束)

此时,我们添加数据时,可以不用添加id了,因为id会自己增长!

可以看出,自增长,默认是从1开始自增的,每次增1,这些值都可以修改。

自增长的列的类型,必须是数字类型。

其实,让id列自增长,不用写出列的名字,这样太麻烦!

可以自己定义自增长的起始值

1. 在定义表的同事就指定:

2. 在建表后,修改自增长的起始值

注意,这个起始值能修改的比当前的最大值还大。就会从新的起始值开始自增长!

我们现在把表中的数据删除掉。再次添加数据,生成的自增长的值是接着最大保留值增长的!

truncate table 先删除表,再创建表。(术语上叫做“截断”表)

截断表的作用,可以让自增长列重新从起始值开始生成值!

注意, 删除某个id后,下面的id不会“挤上来”

唯一性约束:被添加唯一性约束的列,其值不能重复。 和主键不同的是,唯一性约束的值可以是NULL,且一张表中可以有多个唯一性约束。

注意,唯一性约束的列中可以有NULL值,且可以有多个NULL值。

易悦(深圳)科技有限公司

让快乐更简单

微信:EJoyYOJOY

微博:http://weibo.com/EJoyYOJOY

官网:http://www.ejoytec.com/

联系&投稿:[email protected]

时间: 2024-10-08 04:43:30

数据库的char(n)的相关文章

数据库中char与varchar类型的区别

在建立数据库表结构的时候,为了给一个String类型的数据定义一个数据库的数据库类型,一般参考的都是char或者varchar,总结一下它们两者的区别,明确一下两者的区别. 1.char的长度是不可变的,而varchar的长度是可变的.也就是说,定义一个char[10]和varchar[10],如果存进去的是'abcd',那么char所占的长度依然为10,除了字符'abcd'外,后面跟六个空格,而varchar就立马把长度变为4了;取数据的时候,char类型的要用trim()去掉多余的空格,而v

数据库中char, varchar, nvarchar的差异

char     char是定长的,也就是当你输入的字符小于你指定的数目时,char(8),你输入的字符小于8时,它会再后面补空值.当你输入的字符大于指定的数时,它会截取超出的字符.    nvarchar(n)     包含 n 个字符的可变长度 Unicode 字符数据.n 的值必须介于 1 与 4,000 之间.字节的存储大小是所输入字符个数的两倍.所输入的数据字符长度可以为零.        varchar[(n)]       长度为 n 个字节的可变长度且非 Unicode 的字符数

关于数据库中char,varchar,varchar(2)的区别

数据库中的char类型用于存储定长类型;效率比varchar要稍高,但是,占用空间比varchar要多. 比如"asd",对于char(9)就表示存储9个字节(包括6个空字节),在取值的时候就需要.trim()把两边的空号去掉. 对于varchar(9),则是按照实际字节数存储的,只存储三个字节. oracle中,会有一个varchar2型的数据类型,varchar2型与varchar型的区别: 1.varchar2把所有字符都占两字节处理(一般情况下),varchar只对汉字和全角等

sqlite数据库的char,varchar,text,nchar,nvarchar,ntext的区别(转)

sqlite数据库存储table1.CHAR.CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间,不足的自动用空格填充.2.VARCHAR.存储变长数据,但存储效率没有CHAR高.如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 VARCHAR(10)是最合算的.VARCHAR类型的实际长度是它的值的实际长度+1.为什么“+1”呢?这一个字节用于保存实际使用了多大的

数据库中char、varchar、varchar2、nvarchar之间的关系

符串“abc",对于CHAR (20),表示你存储的字符将占20个字节(包括17个空字符),而同样的VARCHAR2 (20)则只占用3个字节的长度,20只是最大值,当你存储的字符小于20时,按实际长度存储. oracle中,会有一个varchar2型的数据类型,varchar2型与varchar型的区别: 1.varchar2把所有字符都占两字节处理(一般情况下),varchar只对汉字和全角等字符占两字节,数字,英文字符等都是一个字节:2.VARCHAR2把空串等同于null处理,而varc

[Android Pro] sqlite数据库的char,varchar,text,nchar,nvarchar,ntext的区别

reference : http://blog.csdn.net/xingfeng0501/article/details/7817121 1.CHAR.CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间,不足的自动用空格填充. 2.VARCHAR.存储变长数据,但存储效率没有CHAR高.如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 VARCHAR(10)是最合

sqlite数据库的char,varchar,text,nchar,nvarchar,ntext的区别

1.CHAR.CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间,不足的自动用空格填充. 2.VARCHAR.存储变长数据,但存储效率没有CHAR高.如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 VARCHAR(10)是最合算的.VARCHAR类型的实际长度是它的值的实际长度+1.为什么“+1”呢?这一个字节用于保存实际使用了多大的长度.从空间上考虑,用varc

【转载】 sqlite数据库的char,varchar,text,nchar,nvarchar,ntext的区别

原文地址:http://blog.csdn.net/xingfeng0501/article/details/7817121 1.CHAR.CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间,不足的自动用空格填充. 2.VARCHAR.存储变长数据,但存储效率没有CHAR高.如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 VARCHAR(10)是最合算的.VARC

数据库unsigned char*类型图片存进

loadimage1();测试: void Caccess_test_1Dlg::loadimage1()//存入unsigned char*类型的数据图片 { CFileException e; Invalidate(); //输入图片测试 CString sFilePathName = L"D:\\bridge.bmp"; m_Pic.Load(sFilePathName); BOOL bResult = FALSE; CFile f; //int nSize = 0; if (m