SQL第三课-自动编号与初涉约束
自动编号:auto_increment
一张数据表中,要设定字段的唯一性,就会用到编号,确保编号的唯一性是避免重名和数据混乱的一种方式。
主键,一张表只能并只有一个。在创建字段表时,指定 PRIMARY KEY;
设置自动编号的记录一定要设置为主键。
举例创建数据表3
CREATE TABLE tb3(
id SMALLINT UNSIGEND PRIMARY KEY AUTO_INCREMENT,
usernname VARCHAR(20) NOT NULL
);
查看数据表的基本结构:show columns from tb3;
插入记录:
insert tb4(username) VALUES('zhangsan');
INSERT INTO tb4(username) VALUES('lisi');
查看字段SELECT * FROM tb3;
设置为主键的可以不用自动编号:
举例创建数据表4
CREATE TABLE tb4(
id SMALLINT UNSIGEND PRIMARY KEY,
usernname VARCHAR(20) NOT NULL
);
查看数据表的基本结构:show columns from tb4;
插入数据:
insert into tb4 VALUES(4,'Tom');//不指定字段名,那么就要为所有字段赋值
insert tb4 VALUES(22,'John');
查看这张表所有字段的所有记录 SELECT * FROM tb4;
可以看到,主键的字段是可以赋值的。但是不允许赋值重复的值。
唯一约束
unique key
保证记录的唯一性,字段可以为控制,每张数据表可以存在多个唯一约束;
SQL第三课-自动编号与初涉约束的更多相关文章
- 【转】SQL 2008 Insert返回自动编号id三种方法比较
SQL Server 2008中,insert数据的时候返回自动编号的id,有三种方法实现SCOPE_IDENTITY.IDENT_CURRENT 和 @@IDENTITY, 它们都返回插入到 IDE ...
- sql查询时增加自动编号和分页
查询时加序号 a:没有主键的情形: ,) as iid,* into #tmp from TableName Select * from #tmp Drop table #tmp b:有主键的情形: ...
- SQL Server 重新恢复自动编号列的序号
1. truncate table tablename2. DBCC CHECKIDENT (tablename,reseed,1) truncate命令不但会清除所有的数据,还会将IDENTIT ...
- sql批量插入添加自动编号
使用: ROW_NUMBER() over(order by ID desc) insert into dbo.Aa(Name,Nums) select top 10 NickName,ROW_NUM ...
- 第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据
第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据 ADO.NET 为什么要学习? 我们要搭建一个平台(Web/Winform ...
- SQL初级第三课(下)
我们续用第三课(上)的表 辅助表 Student Course Score Teacher Sno ...
- sql 复杂自动编号错误批量修改方案
[一篮饭特稀原创,转载请注明出自http://www.cnblogs.com/wanghafan/p/5133953.html] 前提:自动编号为18位,前4位是年份,中间10位是XXXX,最后四位 ...
- ACCESS自动编号重新从1开始
方法一: 删掉自动编号的字段,再建一个同样的自动编号字段. 方法二: 选择工具,再选择数据库实用工具,单击压缩和修复数据库,这样就OK了. 方法三:(提示错误“无效的数据字段类型” 尝试失败) ...
- 【C语言探索之旅】 第二部分第三课:数组
内容简介 1.课程大纲 2.第二部分第三课: 数组 3.第二部分第四课预告:字符串 课程大纲 我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答案.还会带大家用C语言编写三个游戏. C语 ...
随机推荐
- io scheduler
http://doctorlzr1988.blog.163.com/blog/static/50456520201051905236683/
- wind7系统修改host
http://jingyan.baidu.com/article/e5c39bf56564a539d7603312.html 由于软件注册的原因,我需要更改hosts文件来防止服务器验证!那么在我们修 ...
- 转:XPath路径表达式
XPath 使用路径表达式来选取 XML 文档中的节点或节点集.节点是通过沿着路径 (path) 或者步 (steps) 来选取的. XML 实例文档 我们将在下面的例子中使用这个 XML 文档. & ...
- 转html5语义化标签总结一
HTML 5的革新之一:语义化标签一节元素标签. 在HTML 5出来之前,我们用div来表示页面章节,但是这些div都没有实际意义.(即使我们用css样式的id和class形容这块内容的意义).这些标 ...
- mysql----快速删除数据表(drop,truncate.delete)
概念: 三者均可删除数据表 TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行.但 TRUNCATE TABLE 比 DELETE 速度快 ...
- Android Studio的使用(二)--Debug调试
使用Android Studio进行Debug调试,这里有一篇比较详细的介绍 http://www.2cto.com/kf/201506/408358.html 故不再重复介绍.
- MVC3在页面上获取当前控制器名称、Action名称以及路由参数
获取控制器名称: ViewContext.RouteData.Values["controller"].ToString(); 获取Action名称: ViewContext.Ro ...
- Windows系统字体与文件对照表
源:Windows系统字体与文件对照表 宋体 (TrueType) = SIMSUN.TTF 黑体 (TrueType) = simhei.ttf 楷体_GB2312 (TrueType) = sim ...
- Bundle versions string, short与Bundle version
在提交更新的app至appstore中时,需要在**.plist中设置app的version信息.Bundle versions string, short --- CFBundleShortVers ...
- 计算机学院大学生程序设计竞赛(2015’12) 1002 Polygon
#include<iostream> #include<cstring> #include<cstdio> #include<cmath> #inclu ...