四、C#上位机数据库和进阶篇

相关的概念和常识

一、关于数据库
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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值