diff --git "a/\350\224\241\345\234\243\346\201\251/2024.12.30\346\210\220\347\273\251\350\241\250.md" "b/\350\224\241\345\234\243\346\201\251/2024.12.30\346\210\220\347\273\251\350\241\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..9269a5827f59b622d6009b0a300433473de41094 --- /dev/null +++ "b/\350\224\241\345\234\243\346\201\251/2024.12.30\346\210\220\347\273\251\350\241\250.md" @@ -0,0 +1,171 @@ +### Index代码 +```html +
+ + 新增 +
+ + + + + + + + + + + + + @foreach (var item in Model) + { + + + + + + + + } + +
Id课程名称学生名称成绩操作
@item.Id@item.CourseName@item.StudentName@item.Scores + + 编辑 + + 删除 +
+``` +### Delete代码 +```html +

确定删除如下数据吗?

+ + + + + + + + + + + + + + + + + +
@Model.CourseId
@Model.StudentId
@Model.Scores
+ + 确认删除 + + + 取消删除 +
+``` +### Edit代码 +```html +@model Score; + +
+ + + + + + + + + + + + + + + + + +
课程Id + +
学生Id + + +
成绩 + +
+ + + + 取消保存
+
+``` +### Add代码 +```html +@model ScoreManger.Dto.ScoreCreateDto; + +
+ + + + + + + + + + + + + + + + + +
课程Id + +
学生Id + + +
成绩 + +
+ + + + 取消保存
+
+``` +### ScoreCreateDto类代码 +```csharp +namespace ScoreManger.Dto; + +public class ScoreCreateDto +{ + // 课程Id属性,用于接收用户选择的课程Id + public int CourseId { get; set; } + // 学生Id属性,用于接收用户选择的学生Id + public int StuId { get; set; } + // 成绩属性,用于接收用户输入的成绩 + public decimal Score { get; set; } +} \ No newline at end of file diff --git "a/\350\224\241\345\234\243\346\201\251/2025.1.03\345\210\207\346\215\242\346\225\260\346\215\256\345\272\223.md" "b/\350\224\241\345\234\243\346\201\251/2025.1.03\345\210\207\346\215\242\346\225\260\346\215\256\345\272\223.md" new file mode 100644 index 0000000000000000000000000000000000000000..04d2ba73b84aa6af53bf8fff89381d242fda9456 --- /dev/null +++ "b/\350\224\241\345\234\243\346\201\251/2025.1.03\345\210\207\346\215\242\346\225\260\346\215\256\345\272\223.md" @@ -0,0 +1,101 @@ +# 部署PostgreSQL数据库 +## 安装PostgreSQL +要在Ubuntu系统中安装PostgreSQL数据库,可以使用以下命令: +```bash +sudo apt update +sudo apt install postgresql postgresql-contrib +``` + +## 验证安装 +安装完成后,可以使用以下命令来验证PostgreSQL服务是否正常运行: +```bash +sudo systemctl status postgresql +``` + +如果服务处于活动状态,则表示安装成功. + +## 更改默认用户密码 +为了增强安全性,建议为PostgreSQL的默认用户 `postgres` 更换一个复杂的密码。可以通过以下命令来实现: +```bash +sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD 'your-secure-password';" +``` + +请将 `your-secure-password` 替换为你选择的密码. + +## 配置远程数据库访问 +若想允许远程访问PostgreSQL数据库,需要对 `postgresql.conf` 和 `pg_hba.conf` 文件进行修改. + +### 编辑 `postgresql.conf` +打开 `postgresql.conf` 文件: +```bash +sudo nano /etc/postgresql/12/main/postgresql.conf +``` + +找到 `listen_addresses` 配置项,并将其更改为: +```bash +listen_addresses = '*' +``` + +### 编辑 `pg_hba.conf` +打开 `pg_hba.conf` 文件: +```bash +sudo nano /etc/postgresql/12/main/pg_hba.conf +``` + +在文件末尾添加以下规则,以允许所有IP地址访问数据库: +```bash +host all all 0.0.0.0/0 md5 +``` + +修改完成后,保存并关闭文件,然后重启PostgreSQL服务: +```bash +sudo systemctl restart postgresql +``` + +## 更新.NET项目数据库配置 +在.NET项目中,需要更换数据库驱动并更新数据库上下文的配置信息. + +### 移除旧的数据库驱动 +首先,移除原有的数据库驱动包: +```bash +dotnet remove package Microsoft.EntityFrameworkCore.SqlServer +``` + +### 安装新的数据库驱动 +接着,安装适用于PostgreSQL的数据库驱动包: +```bash +dotnet add package Npgsql.EntityFrameworkCore.PostgreSQL +``` + +### 修改数据库上下文配置 +在项目的 `appsettings.json` 或相关配置文件中,更新数据库连接字符串为PostgreSQL的格式: +```json +{ + "ConnectionStrings": { + "DefaultConnection": "Host=your-server-address;Port=5432;Database=your-database-name;Username=your-username;Password=your-password" + } +} +``` + +请将 `your-server-address`、`your-database-name`、`your-username` 和 `your-password` 替换为实际的值. + +## 更新迁移文件 +更换数据库驱动并更新配置后,需要重新生成迁移文件以确保其与新数据库兼容. + +### 删除现有迁移文件 +删除现有的迁移文件: +```bash +dotnet ef migrations remove +``` + +### 添加新的迁移 +添加新的迁移文件: +```bash +dotnet ef migrations add InitialCreate +``` + +### 应用迁移 +最后,应用迁移以创建数据库结构: +```bash +dotnet ef database update +``` \ No newline at end of file