目标:两周学习路线

目标:

两周内 ,掌握使用 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 查询
  • 学前后端分离架构
相关推荐
开开心心_Every5 分钟前
安卓做菜APP:家常菜谱详细步骤无广简洁
服务器·前端·python·学习·edge·django·powerpoint
wdfk_prog7 分钟前
WIN11如何可以安装ISO
linux·笔记·学习
Darkershadow16 分钟前
蓝牙学习之Provision(2)
学习·蓝牙·ble·mesh
kitsch0x9732 分钟前
论文学习_IDFUZZ: Intelligent Directed Grey-box Fuzzing
学习
dxnb221 小时前
Datawhale26年1月组队学习:Agentic AI+Task1工作流简介
人工智能·学习
Nan_Shu_6141 小时前
学习: Threejs (9)& Threejs (10)
学习
只想要搞钱1 小时前
python 学习记录--1(开发工具,链接数据库mysql)
python·学习
kitsch0x971 小时前
论文学习_Binary-level Directed Fuzzing for Use-After-Free Vulnerabilities
学习
丝斯20111 小时前
AI学习笔记整理(43)——NLP之大规模预训练模型BERT
人工智能·学习·自然语言处理
lkbhua莱克瓦242 小时前
进阶-SQL优化
java·数据库·sql·mysql·oracle