【C#基础】【SQL数据库】课堂笔记 (更新完)

【第一次课、数据库简介】

一、基本概念

1、数据:Data,用文字或符号描述的现实中的事物
2、数据库:DataBase/DB,数据的仓库

二、数据库的作用
1、存储大量数据,方便检索和访问
2、保持数据的一致和完整
3、共享和安全
4、通过组合分析,产生新的有用信息

三、理解数据库服务器和应用程序
1、应用程序:提供交互的界面,接收或显示数据,例如腾讯QQ软件
要求:简单、大方、友好

2、数据库服务器:存取数据,例如腾讯专门存储数据的服务器
要求:安全、统一

四、数据库管理系统:DBMS,用于管理和维护数据库以及数据的软件
1、常用的DBMS:
1)Oracle公司的:Oracle10g/11g
2)微软公司的:SqlServer2005/2008
3)IBM公司的:DB2
4)Oracle公司(SUN)的:MySQL

2、安装SqlServer2008软件(详细步骤见安装文档)

3、如何连接SqlServer数据库服务器
1)准备工作:启动Sqlserver服务
   运行>>CMD>>net start/stop mssqlserver
2)进入SqlServer2008登录界面:ssms.exe
3)配置登录信息
3-1)服务器类型:数据库引擎
3-2)服务器名称:IP地址/计算机名
注意:本机可以使用.或127.0.0.1表示
3-3)身份验证:
a)Windows身份验证:只要进入了操作系统就能进入数据库
b)SqlServer身份验证:需要输入登录名和密码
登录名:sa,系统提供的超级管理员

五、数据库的管理
1、分类
1)系统数据库(master/model/msdb/tempdb)
master 用于存储系统的数据信息
2)用户自定义数据库:根据需要1个项目对应1个数据库

2、创建数据库:在硬盘中创建对应的文件
1)*.mdf,主要数据文件,有且只有1个
2)*.ldf,日志文件,可以多个
3)*.ndf,次要数据文件,可以多个

3、数据库的移植:从A电脑移动到B电脑(拷贝mdf文件)
1)分离:
2)附加:找mdf文件

4、删除数据库:连同数据文件一起删除


【第二次课、建表、约束】

一、基本概念
1、实体:表示现实生活中的事物(东西)
2、表:具有相同格式(特征)的实体集合
3、字段:表中的列,表示实体的特征
4、记录:表中的行,表示具有具体特征的实体
5、数据完整性:保证表中的数据都是合法的,有效的
6、数据冗余:数据库中存在重复的数据

注意:
1)数据是存储在数据库的表中,要存数据必须先建表
2)为了保证数据的完整和减少数据冗余,应该在建表的同时对表实施约束
(先添加完所有约束,再添加数据)

二、数据类型
1、回顾Java中的数据类型
int,double,char,string,float,long,boolean

2、SqlServer中的数据类型
1)int 整数
2)char(N) 固定长度的字符串,浪费空间,由初始大小决定空间
3)varchar(N) 可变长度的字符串,节约空间,由实际大小决定空间
4)float 小数
5)datetime 日期时间类型,年-月-日,年/月/日,年.月.日
6)money 货币类型
7)bit 布尔类型(1-true,0-false),设计器中使用true/false,代码中使用1/0

三、实施完整性约束
1、域完整性:针对列而言
1)数据类型,限制该列只能接受指定类型的数据
2)是否为空,限制该列是否可以不输入值
3)检查约束(check),相当于Java中的if条件
a-将列名理解为Java中的变量
b-命名规范:CK_表名_列名
c-所有字符串使用单引号,数据库中没有双引号
d-逻辑运算符:并且 and,或者 or,非 not
e-关系运算符:等于 =,没有==符号
4)默认值(default),如果没有给该列指定值则使用默认值

2、实体完整性:针对行而言,保证每行的唯一性
1)主键:该列不允许重复、不允许为空
a-1个表只能设置1个主键,可以没有
b-如何选择主键(原则):稳定性,最小性

2)唯一键:该列不允许重复、允许1个值为空
a-1个表可以设置多个唯一键,可以没有

3)标识列:自动增长列,只能是int类型
a-标识种子:初始值
b-标识增量:每次累加的值
c-什么时候用:如果1个表找不到合适主键,则添加标识列作为主键

3、引用完整性:针对多张表而言
a-谁用谁的数据?-->员工表使用部门表的数据
b-原则:如果A表中某列的数据必须来自于B表中某列,则给
A表添加对B表的引用(关系):
B主键表(主表):被引用的表,必须包含主键 -->部门表

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值