相关的概念和常识
一、关于数据库
1、为什么要用数据库?
【1】大批量的、有关系的数据存储、数据检索,使用数据库非常方便。
【2】上位机从下位机采集的数据,需要定时的存储,方便后续使用。
2、数据库类型有哪些?
【1】关系型数据库:SQLServer、MySql、Sqlite、Access、Oracle
【2】非关系型数据库:Redis…
3、关系型数据库有哪些特点?
【1】表格化存储。按照指定的列,创建指定的表格,统一的数据格式。
【2】关系化存储。通过表内和表之间创建约束和关联来防止数据错误。后期修改会有效率,更灵活
【3】海量化存储。
4、数据库实体概念
【1】实体表示要存储的一组有关系的数据,对应数据表中就是一条数据。
【2】数据库实体,后面要和C#中的“实体类”做对应关系的转化。
5、数据库学什么?(Express)
【1】学会安装、了解组成(客户端 + 服务端(服务))
客户端:就是数据库软件本身
服务端:在电脑的 服务 能查到 具体看截图

也可以右击开始菜单 选运行 输入services.msc

这个就是服务,一般为自动开启
服务 和 客户端可以不在同一台电脑
【2】客户端工具基础使用(登录、密码修改、操作数据库)。
【3】基于T-SQL脚本创建、修改、查询、维护数据库。
【4】高级SQL编程。(基础掌握)
6、SQL是什么?
【1】结构化查询语言(Structured Query Language)是一种标准的数据库编程语言。
【2】T-SQL(Transact-SQL,是Microsoft SQL Server 上的增强版)
二、安装数据库
1、常用版本:SqlServer2012、SqlServer2019
2、版本说明:Express版本(专门用来学习免费使用,其他都收费)
3、启动服务:通过计算机管理—>服务(双击启动、关闭)
4、关于实例:数据库的实例,就是数据库服务的名称,安装的时候,如果以前没有装过其他版本的数据库,安装的时候,可以用默认实例,也可以用命名实例。如果以前装过其他的版本,只能用命名实例。因为实例名称不能重复。
5、命名实例:电脑名称/实例名称 比如:THINGER/SQLExpress
特别注意:《命名实例》和《默认实例》千万不要搞错。
安装后在这里打开客户端软件:

三、登录数据库
1、Windows身份验证:拥有最高权限。需要两个条件
【1】服务器名称:默认实例、或命名实例。
默认实例:可以用“.”来代替,也可以直接用“计算机名称”.
命名实例:必须用完整的《计算机名称\实例名称》
【2】服务必须开启。
记住:只能是本地计算机。(客户端和服务都在同一台电脑 为本地)
2、SQLServer身份验证:sa(超级管理员)拥有最高权限。需要3个条件。
【1】服务器名称。
【2】用户名。(现阶段学习都用sa)
【3】密码。(安装的时候设置好,如果忘记了,需要重新更新)
记住:我们开发中,一般都是用SQLServer身份验证。可以是本地,可以是局域网,或者云服务器远程连接。
3、开启SQLServer身份验证的步骤(如没开启要用windows身份验证登录)
【1】启用SQLServer和Windows身份验证模式。(右键)

【2】开启sa账号。状态选项卡:授予+已启用(双击sa)

【3】修改sa密码。常规选项卡:重新修改密码 (掩码长度可以无视和密码位数无关)

【4】重启SQLServer服务。两种方式:直接找到服务,停止后再启动。
或,右键点击《对象资源管理器》根节点,选择“重新启动”即可。

4、远程登录数据库 (服务器)
【1】什么是远程?局域网内的其他计算机上的数据库或者云服务器。
【2】数据库所在计算机必须开启TCP/IP协议。


【3】必须使用SQLServer身份验证。(上面讲过)
【4】默认实例必须使用“IP地址“;命名实例必须使用“IP地址/实例名”
局域网内192.168.1.*** 能正确访问并固定的IP地址
服务器(广义:只要这个计算机对外提供的信息共享;狭义:专指代用来对外提供某种数据服务的计算机)
四、登录常见问题
1、实例错误。解决方法:
【1】本地连接
第一、检查服务是否打开。
第二、确定是命名实例还是默认实例。并且保证实例名称必须写正确。
【2】远程连接
第一、按照本地连接检查远程服务开启和实例名称是否正确。
第二、检查TCP/IP协议是否打开。
第三、防火墙是否关闭。 或者单独放行 1433
第四、远程计算机是否允许远程连接等。
同时保证物理的网络畅通!
2、用户‘sa’登录失败。解决方法:
sa密码错误。改成正确的密码。
3、用户‘sa’登录失败。原因:该账户被禁用。
用windows身份验证登录,然后开启sa账号即可。
4、其他与登录相关的问题。解决方法:
按照sa开启的4个步骤逐个修改,其次把TCP/IP协议打开即可。
五、基于T-SQL创建数据库
1、认识企业管理器(就是客户端)
新建查询:可以输入命令脚本实现对数据库的任何操作
2、系统数据库的分类(不能乱动)
【1】master数据库:数据库的数据库,保存其他数据库的信息。
【2】model数据库:模板数据库。
【3】msdb数据库:用来备份等使用的数据库。
【4】tempdb数据库:临时数据库,用于存储SQL程序中产生的临时表。
3、用户数据库文件组成
【1】mdf:主数据文件。必须有,且只能有一个。
【2】ndf:次要数据文件。可以没有,可以有多个。用来扩展存储。
【3】ldf:日志文件。至少有一个,可以有多个。
4、使用T-SQL创建数据库的步骤:
【1】确定数据库的名称;数据库保存到哪里,创建好D:\DB文件夹开始创建数据库。
【2】关于保存文件的路径中的文件夹(DB文件夹内的文件夹),要提前创建好,并且添加everyone权限,如果没有这个权限,可能会出现“拒绝访问”这样的错误。
【3】实现步骤:(参考源码和视频)
1、登录和连接数据库服务端
2、新建查询:出现文本编辑区
use master--当前数据库指向master数据库 表示下面操作是针对master数据库完成的
go--语句结束
--判断当前数据库是否在master数据库中已经存在
if exists(select *from sysdatabases where name='MISDB')
drop database MISDB --删除数据库
go
--创建数据库
create database MISDB --数据库名称MISDB
on primary--主文件组
(
name='MISDB_Mdata',--数据库文件的逻辑名称(数据库服务内部使用的)
filename='D:\DB\MISDB_Mdata.mdf',--存储文件的绝对路径,文件夹名不能特殊符号
size=20MB,--数据库文件初始大小
filegrowth=1MB--当数据超过文件大小的时候自动增长量,不能太小,频繁增长影响性能
),--主文件和次要文件之间用,
( --次要数据文件(可以有多个,也可以没有)
name='MISDB_ndata',--数据库文件的逻辑名称(数据库服务内部使用的)
filename='D:\DB\MISDB_ndata.ndf',--存储文件的绝对路径,文件夹名不能特殊符号
size=20MB,--数据库文件初始大小
filegrowth=1MB--当数据超过文件大小的时候自动增长量,不能太小,频繁增长影响性能
)
log on--日志文件至少1个
(
name='MISDB_log1',--数据库文件的逻辑名称(数据库服务内部使用的)
filename='D:\DB\MISDB_log1.ldf',--存储文件的绝对路径,文件夹名不能特殊符号
size=2MB,--数据库文件初始大小
filegrowth=1MB--当数据超过文件大小的时候自动增长量,不能太小,频繁增长影响性能
),
(
name='MISDB_log2',--数据库文件的逻辑名称(数据库服务内部使用的)
filename='D:\DB\MISDB_log2.ldf',--存储文件的绝对路径,文件夹名不能特殊符号
size=2MB,--数据库文件初始大小
filegrowth=1MB

1762

被折叠的 条评论
为什么被折叠?



