目标:两周学习路线

目标:

两周内 ,掌握使用 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 查询
  • 学前后端分离架构
相关推荐
m0_5713728215 分钟前
嵌入式ARM架构学习2——汇编
arm开发·学习
AlexMercer10121 小时前
[前端]1.html基础
前端·笔记·学习·html
xianyinsuifeng2 小时前
Oracle 10g → Oracle 19c 升级后问题解决方案(Pro*C 项目)
c语言·数据库·oracle
一川月白7092 小时前
51单片机---硬件学习(跑马灯、数码管、外部中断、按键、蜂鸣器)
单片机·学习·51单片机·外部中断·蜂鸣器·数码管·跑马灯
励志不掉头发的内向程序员3 小时前
STL库——二叉搜索树
开发语言·c++·学习
ホロHoro4 小时前
学习笔记:MYSQL(4)
笔记·学习·mysql
aaaweiaaaaaa4 小时前
c++基础学习(学习蓝桥杯 ros2有C基础可看)
c++·学习·蓝桥杯·lambda·ros2·智能指针·c++类
MadPrinter4 小时前
SpringBoot学习日记 Day11:博客系统核心功能深度开发
java·spring boot·后端·学习·spring·mybatis
wanzhong23336 小时前
ArcGIS学习-18 实战-降雨量空间分布插值分析
学习·arcgis
wanzhong23336 小时前
ArcGIS学习-19 实战-表面分析
学习