SQL数据库常用约束及建表、插入数据时注意事项
1、数据库常用约束
primary key --主键约束
foreign key (references) --外键约束
unique --唯一值约束
default --默认值约束
check --检查约束
not null --非空约束
identity --标识列
2、创建数据表时需要注意的相关事项
首先,在我们建表之前要先引用指定的数据库
如果是要求创建多张表时,我们要分析表与表之间的关系,确定主外键表,
切记 一定要先创主键表,再创外键表
主外键的数据一定要保持一致性,表中列与列之间用 , (逗号)隔开,最后一列不加
如果表中未确定主外键关系,我们可以自行添加主外键
3、插入数据时注意事项
--创建酒店房间信息表
create table RoomInfo
(roomeID int primary key identity(1,1),--主键,自动增长列 房间编号 Roomname varchar(50) not null,--不允许为空 房间名称 roomePrice Int not null,--不允许为空 房间金额 RoomDes Varchar(500) not null,--不允许为空 房间简介 addTime datetime null,--允许为空 (预订房间后才有时间更新)入住时间 joininday Int null,--允许为空 入住天数 buyState int default(1),-- 1 值为1或2,分别表示: 订购状态 1:未预订 2:已 预订Totalprice Int null,--允许为空 总金额 roomtypeID int references RoomType(TypeID)--外键,房间所属房间类型编号 所属类型编号
)
goinsert into RoomInfo values('吉祥如意',698,'地中海风情设计',null,null,1,null,4)
(1)、values里的数据个数、类型、默认值必须与表中对应列保持一致
(2)、表中不允许为空的列必须插入数据,有默认值的除外
(3)、标识列不能添加数据,因为它是自增的,不能修改
(4)、插入非数值类型时必须添加''(单引号)包含数据
(5)、插入有默认值或可以为空的列,要使用 default和null关键字
SQL数据库常用约束及建表、插入数据时注意事项相关推荐
- 有外键约束的子表插入数据时出现的错误
mysql-外键 父表:t_grade 子表:t_student 当在字表中插入数据时,必须有与其对应的父表记录,若父表中无对应的相关记录,则子表的数据插入失败 转载于:https://blog.51 ...
- 数据库入门教程--01建库建表插入数据以及数据的修改
if exists(select * from sysdatabases where name ='Datatest') Drop database Datatest go--判断是否已存在数据库Da ...
- jdbc 3种获得mysql插入数据的自增字段值的方法_【JDBC】向数据表插入数据时,自动获取生成的主键...
数据表设计时,一般都会有一个主键(Key)(自己指定),有时也可以使用联合主键: 有许多数据库提供了隐藏列为表中的每行记录分配一个唯一键值(如:rowid): 当我们没有指定哪一列作为主键key时,数 ...
- SQL数据库实战(含建表数据和查询案例)
Oracle数据库安装的时候会自带一个练习用数据库(其中包含employee表,后来版本中此表改名为emp): 首先在安装过程中应该有个选项"是否安装实例表"(完全安装模式下默认是 ...
- python怎么导入sql数据库,##使用python将excel表中数据导入sql server数据库
如何用python将excel数据导入到postgresql数据库中 把excel表格另存为csv文件 python将exce文件含有多个sheet同时l导入sqlserver数据库 需要使用xlrd ...
- ABAP:向自建表写入数据时,需要注意的问题
在某个创建的自建表中,某个字段的数据元素为SAKNR(总账科目号),类型为CHAR(10),但是导入的数据的长度只有CHAR(6),比数据库字段要短,如果直接导入,不进行任何处理,会出现什么潜在的问题 ...
- SQL删除语句同时向备份表插入数据
从这里摘抄下来的,觉得很不错,http://www.cnblogs.com/ljhdo/p/5792886.html#3503524 ,以后就用这种方式删除,再也不用担心删除错数据啦!!! 转载于:h ...
- Hive从一个表向另一个表插入数据的注意事项
使用insert into table <table_name> select语句执行数据迁移时,必须保证前后两个表字段数量一致. 测试场景: 当前存在表wht_test1,表结构以及数据 ...
- (19)一篇掌握MySQL数据库基础下 基本操作(外键约束、建表原则、多表查询、子查询)
MySQL数据库基础下 一.修改表--添加外键约束 二.多表之间的建表原则 1.建数据库原则:通常情况下,一个项目/应用建一个数据库 2.多表之间的表原则: (1)一对多:分类和商品 (一个分类对应多 ...
最新文章
- 技术图文:Python 位运算防坑指南
- MyBatis-学习笔记06【06.使用Mybatis完成DAO层的开发】
- java正则表达式 百分号_转义中间字符串百分号,是一个正则表达式的最佳选择?...
- jquery如何获取checkbox的值
- 在安卓手机上下载linux系统,如何在安卓手机上运行Ubuntu系统
- linux内核网络栈代码的准备知识
- k8s核心技术-Controller(DaemonSet)_部署守护进程---K8S_Google工作笔记0034
- python 中self
- Maxent Source code reading experience
- 如何克服presentation恐惧呢?
- Aps.Net js ymPrompt消息提示组件4.0版
- 深圳市最新10区地图json文件,使用与echarts,百度,高德等免费
- 计算机机房实训计划,计算机专业实习计划安排.docx
- 世界头号电脑黑客 - 凯文•米特尼克(Kevin Mitnick)
- 一个案例入门tableau——NBA球队数据可视化实战解析
- 数字经济是党和国家定下的重要发展战略
- 药物研发检测记录模板-0903不溶性微粒检查法检验原始记录
- SKYPE的BUG 7/8
- <马哲>价值规律的内容、表现形式及其作用
- 赛诺菲巴斯德宣布建立专属mRNA疫苗卓越中心;​葛兰素史克单片双药艾滋病治疗药物多伟托在中国上市 | 医药健闻...
热门文章
- 运动控制卡讲解及实例应用
- S7-200SMART案例分析——运动控制编程(三)
- 教学|3DsMAX怎么样制作环境贴图,3D建模步骤教程
- 推荐几款好用的UI框架 和 后台管理系统(开源免费)
- Django项目实践(商城):十五、商品列表页面
- 运维人员必会的系统安全
- 计算机视觉需要学习哪些编程语言?
- amd、cmd、esmodule、commonjs区别
- idea关联scala与spark开发(全)
- “measure”(测量)、“measurement”(测度)和“metrics”(度量)