目标:两周学习路线

目标:

在 两周内 ,掌握使用 C# 与 SQL Server 进行基本的数据交互操作(增删改查 CRUD、连接、参数、事务等),为后续 WinForm/Web API/EF 等进阶打基础。


📅 学习大纲(共两周)

🗓️ 第1周:SQL Server + ADO.NET 基础


Day 1-2:SQL Server 基础
  • 安装 SQL Server(推荐使用 SQL Server Express + SSMS)

  • 基本概念:

    • 数据库、表、列、行、主键、外键
    • 数据类型(int, varchar, datetime, bit等)
  • SQL 基本语法:

    • CREATE DATABASE, CREATE TABLE
    • INSERT, SELECT, UPDATE, DELETE
  • 练习:创建一个简单的数据库 BookStore,有表:

    复制代码
    sql
    
    
    复制编辑
    Books (BookId, Title, Author, Price, Stock)

Day 3-4:SQL 进阶语法
  • WHERE, ORDER BY, GROUP BY, LIKE, IN, BETWEEN
  • 多表连接:INNER JOIN, LEFT JOIN
  • 简单视图、存储过程、函数、触发器(以了解为主)
  • 索引、主键/外键约束
  • 练习题目:
    • 查找价格最高的图书
    • 统计每位作者的图书数量
    • 建立视图:Top10MostExpensiveBooks

Day 5-7:C# 基础 + ADO.NET 数据访问
  • 简介:C# 控制台项目结构(Program.cs)
  • 安装 SQL Server 驱动(System.Data.SqlClient)
  • 基本使用流程:
    • SqlConnection, SqlCommand, SqlDataReader
  • 实现功能(控制台):
    • 查询图书信息并打印
    • 插入一本新书
    • 修改图书库存
    • 删除一本书
  • 重点理解:
    • 使用 using 管理连接
    • 参数化查询防止 SQL 注入

🗓️ 第2周:C# 数据交互 + 实战项目


Day 8-9:封装数据库操作类
  • 创建类库 DbHelper
    • ExecuteNonQuery(增删改)
    • ExecuteScalar(单值返回)
    • ExecuteReader(查询)
  • 学习使用配置文件读取连接字符串(app.config / settings.json)

Day 10-11:实战小项目
  • 项目名称:图书管理控制台系统
  • 功能要求:
    • 查看所有图书列表
    • 添加图书
    • 修改图书价格
    • 删除图书
    • 搜索图书(模糊查询)
  • UI 形式:控制台菜单循环交互

Day 12:事务处理 + 错误处理
  • 使用事务:
    • SqlTransaction 示例(如批量插入图书)
  • 错误处理:
    • 使用 try-catch 捕获数据库错误
    • 日志输出建议(可选写入txt)

Day 13:知识回顾 + 测试
  • 让 TA 回答下面问题:
    • 什么是连接字符串?怎么写?
    • ADO.NET 执行查询的步骤?
    • 用代码演示一个添加数据的完整流程?
  • 手写一个增删改查 + 模糊搜索完整流程

Day 14:进阶方向规划

如果学得不错,建议开始进入以下方向:

  • 学 WinForm 或 ASP.NET Core Web API
  • 学 Entity Framework Core(ORM)
  • 学 LINQ 查询
  • 学前后端分离架构
相关推荐
蒸蒸yyyyzwd8 小时前
从邓明学习的后端笔记
笔记·学习
机器学习之心8 小时前
基于变量相关图与残差学习的 GCN 多变量回归方法——混凝土 28 天抗压强度预测
学习·回归·gcn
Rabitebla21 小时前
【Linux】进程控制(十二) 自定义 Shell(二):内建命令与进程工作目录管理
linux·c++·笔记·学习·bash
Gary移动存储固件21 小时前
eMMC5.1协议中文学习讲解(6.6.17~6.6.22.4.6)
学习·ufs·emmc·nand·存储固件
一个天蝎座 白勺 程序猿1 天前
别让收藏夹替你学习:我搭AI知识体系的完整方法,脚本直接拿去用
人工智能·学习·ai·ai学习
楚山之石1 天前
【Nat Biomed Eng】Connectome 2.0 超高梯度扫描仪:500 mT/m 与 600 T/m/s 把活体人脑微观结构分辨推进到亚微米级
图像处理·学习·数据分析·mri
坤坤子吖1 天前
Linux网络编程:TCP 粘包与半包问题,如何正确处理 TCP 流式数据?
linux·服务器·网络·笔记·网络协议·学习
LGL6030A1 天前
Java学习历程31——初识Spring Boot
java·spring boot·学习
阿达和自己1 天前
springboot学习-springboot引入MyBatis-Plus
spring boot·学习·mybatis
隔窗听雨眠1 天前
Oracle日志体系分层结构与故障定位路径
数据库·oracle·故障排查