目标:两周学习路线

目标:

两周内 ,掌握使用 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 查询
  • 学前后端分离架构
相关推荐
旖旎夜光4 小时前
C++(17)
c++·学习
一水鉴天4 小时前
整体设计 定稿 之9 最后收束 app.py: 应用项目的结构及其模型和框架 (豆包助手)
服务器·windows·microsoft
ideal_x4 小时前
一条SQL直接跑崩288核,1.5T内存数据库
oracle·故障处理
专注于大数据技术栈5 小时前
java学习--StringBuilder
java·学习
唐人街都是苦瓜脸5 小时前
踩坑记:ORA-01722 无效数字错误排查与解决(附实战案例)
sql·oracle
qcwl666 小时前
操作系统 真象还原 学习笔记#13
笔记·学习
车载测试工程师6 小时前
CAPL学习-CAN相关函数-概述
网络协议·学习·capl·canoe
roman_日积跬步-终至千里6 小时前
【人工智能导论】08-学习-如何让计算机理解序列数据——用RNN/LSTM建模时序依赖,用文本嵌入表示序列元素
人工智能·rnn·学习
m0_689618286 小时前
30 分钟打印!多材料3D打印软机器人内置驱动 + 自主避障
笔记·学习·机器人
_MyFavorite_7 小时前
cl报错+安装 Microsoft Visual C++ Build Tools
开发语言·c++·microsoft