目录
一、数据库操作特点
1、海量存储数据
2、存取速度快
3、有效控制并发性
4、安全性 数据库有加密机制
5、数据完整性 年龄 :210岁
二、数据库种类
Sql server 微软旗下 容易上手 文档丰富 只能运行在windows平台下 收费的
MySQL 起初免费 先被Sun公司收购 后来又被Oracal收购 作者又写了一个,名字忘了。
操作速度快 没有存储过程 触发器 事务处理,适合做网站 像企业门户网站,对数据挖掘要求低的电商平台
但是不适合做银行等项目。
mangoDB:内存数据库
DB2:IBM公司,适用于大数据量
Oracal:甲骨文公司 最大的优势是可以跨平台 太贵了
Access:Office出品的文件型数据库
SqLite:极其轻量型数据库
三、SQL Server登录介绍
1、服务器名称:数据库所在的服务器 如果是本地服务器:用.就行,有的电脑安装的时候用的计算机名
如果是远程数据库,比如说,大家都来登录我的数据库,服务器名称:192.168.119.100
启动SqlServer,服务器名可以是计算机名、本机ip localhost .
windows身份验证:电脑用户名密码
安装好数据库以后怎么启用sa账号,来访问数据库:
- 先用windows账号登录数据库。
- //启用windows身份验证方式和sql server身份验证方式。
- //选择“实例”→右键→属性→安全性→服务器身份验证→SQL Server和Winodws身份验证(选中)→确定→重启SQL Server服务。
- //启用sa账号。
- 修改sa密码:安全性→登录名→sa→右键→属性→常规→改密码(不要勾选“强制实施密码策略”)→确定。
2、SQL Server Managerment Studio:管理sql server 的图形化界面,不操作该图形化界面也可以访问sql数据库,
有了该界面,操作数据库更加直观‘易于理解。
3、数据库创建完成以后,会生成两个文件:
1)Hero.mdf 数据库主文件,所有数据都存在这里面
2)Hero.ldf 日志文件 数据库都干了什么 什么时候创建的,什么时候修改的,什么人登录的
4、数据库中的数据以数据表的形式存储,数据表是由行和列组成的二维表 列:字段 行:一条条的数据
四、分离与附加
分离数据库 右键该数据库--》任务-->分离 注意:分离的时候勾选上删除连接
附加数据库
五、数据类型
分类 | 备注和说明 | 数据类型 | 说明 |
数字数据 | 包含数字,正数、负数以及分数 | bigint int smallint tinyint | 整数。 bigint:长度为8个字节,存储从-2^63到2^63-1。 int:长度为4个字节,存储从(-2147483648)到(2147483647)。 Smallint:长度为2个字节,存储从-32768到32767。 tinyint:长度为1个字节,存储0到255的数字。 |
float real | 浮点数 float: 存储-1.79E+308到1.79E+308。 real: 存储大小为4字节。 -3.40E+38到3.40E+38。 | ||
文本数据类型 | 字符数据包含任意字母、符号、数字字符的组合。 | char | 固定长度的非Unicode字符数据,最大长度为8000字符。 |
varchar | 可变长度的非Unicode数据。 | ||
nchar | 固定长度的Unicode数据。 | ||
nvarchar | 可变长度的Unicode数据。 | ||
text | 存储长文本信息 | ||
ntext | 存储可变长度的长文本 | ||
日期和时间 | 日期和时间在单引号内分别输入 | datetime | 日期和时间 |
bit数据类型 | 表示是/否的数据,只有两种选择。在SQL Server中1和0表示,一般1表示是,0表示否。 | bit | 存储布尔数据类型 |
二进制数据类型 | 用于存储非字符和文本数据 | binary | 固定长度的二进制数据 |
varbinary | 可变长度的二进制数据 | ||
Image | 存储图像 |
1、数字类型 int(4个字节,最大是十位(-2147483648)到(2147483647)) bigint(8个字节) smallint(2个字节) tinyint(1个字节)
float(8个字节) real(4个字节)
2、文本类型
1)带var和不带var的区别:
var代表可变长度,比如说 s var(10), 如果我只存储两个字节,它的长度就是2,其余八个是空闲的。
不带var:s char(10) 如果只存储了两个字节,其余8个用零补齐,所以长度依然是10。
无论是var 还是不带var,超过了长度10,都会报错。
所以,密码字段如果用MD5加密的话,绝对不能用char类型,而应该用varchar
2)带n和不带n的区别
不带n: char(2)表示可以存储两个字节 ab、 12、 张
不带n表示非unicode,英文字母、数字会占一个字节,汉字占两个字节
带n:代表unicode方式存储,无论存储汉字还是数字,一个字符都占两个字节
nchar(2):可以存储两个字符,每个字符占两个字节 ”张王“
不带n的这些数据类型,长度最常可以设置为8000,而带n的这些数据类型,长度最长可以设置为4000。
- 排序规则不是中文的情况下,如果存储汉字等双字节字符,必须使用nvarchar,否则存储不进去
3)text:用于存储长文本
4)日期时间:datetime
日期:date
5) bit 存储bool类型 1表示是,0表示否
6)二进制数据类型 binary varbinary image