海量存储数据
查询速度开快
控制并发性
安全
数据完整性
主键: ——唯一标识表中一条记录。
特点:主键不能重复,主键不能为空 不允许NULL
主键 业务主键和逻辑主键(建议逻辑主键)
主键可以有多个列组成一个主键(但是建议用单列设置为主键)
外键:
1.数据冗余问题: 一.造成存储空间的浪费
二.更新异常,删除异常
--一般情况下不允许数据冗余
----如何解决数据冗余问题?
把原来表中的数据拆分成多个表来存储
如何把一个表拆分成多个表 如何将这个两个表数据关联起来
使用主键和外键来进行关联,外键必须引用另一个表的主键 --数据类型
int-整形
--时间类型
date--日期
time--时间
datetime--日期和时间
datetime2--日期和时间 更加精确
--字符串类型
char()
nchar()
varchar()
nvarchar()
varchar(max)
nvarchar(max)
--区别带n不带n
带n的能存储4000的字符--数字英文 汉字 不带n的能存储8000个字节--一个汉字两个字节
--区别带var和不带var var表示可伸缩长度
版本不同 可以生成脚本 任务 生成脚本 高级
--创建数据库的时候设置一些参数选项 on primary
{
--配置主数据文件的选项
name=MyDatabase
--主数据文件的逻辑名称
filename=‘c:\MyDatabse.mdf
’--主数据文件的实际保存路径
size=5mb
maxsize150mb
filegrowth=20%
}
log on {
--配置日志文件的选项
}
--在数据库中创建一个表,在创建表时,注意切换代码环境
create table student
{
AutoID int identity{1,1} primary key,
studentname nvarchar {50} not null
}
数据库不区分大小写 ,sql语句中用单引号 ,单等号