NeuCharFramework (NCF)
  • NCF - NeuCharFramework
  • 项目

    • 准备
    • 基础库源码分析
    • 动态WebApiEngine
    • 部署
    • MCP (Model Context Protocol) 模块
    • Senparc.AI
  • 帮助

    • 在线资源
    • 问答社区
    • QQ群(147054579)
    • Senparc微信SDK
  • Gitee
  • GitHub
  • English
  • 简体中文
GitHub
  • NCF - NeuCharFramework
  • 项目

    • 准备
    • 基础库源码分析
    • 动态WebApiEngine
    • 部署
    • MCP (Model Context Protocol) 模块
    • Senparc.AI
  • 帮助

    • 在线资源
    • 问答社区
    • QQ群(147054579)
    • Senparc微信SDK
  • Gitee
  • GitHub
  • English
  • 简体中文
GitHub
  • NCF 概要

    • NCF - NeuCharFramework
    • 关于 NCF
    • 环境要求
    • 前后端分离模式
    • Xncf模块简介
  • 准备开发

    • 获取 NCF 模板源码
    • 使用 Visual Studio 运行 NCF
    • 使用 CLI 运行 NCF
    • 安装
    • 管理员登录
    • 管理员后台
    • appsettings.json 配置
    • 模块管理
    • 获取文档
  • 配置

    • 入口文件
    • 数据库设置
    • appsettings.json 配置
    • Docker
    • Dapr
    • 配置多租户
    • Redis 缓存
  • 模块化开发

    • NCF 模块化开发思想
    • Xncf 的构成
    • 创建第一个 Xncf 模块
    • Xncf 模块 Sample 详解
    • 实现自己的业务逻辑
    • 更新 Xncf 模块
    • 模块之间如何调用
    • 发布Xncf 模块到nuget.org
    • 更新基础库
    • Xncf 模块开发
    • 嵌入静态资源文件到NCF中
    • 发布本地Nuget包
    • 进阶
  • 数据库

    • 数据库设置
    • 多数据库支持
    • 指定数据库
    • 更新 Senparc.Service 项目的数据库迁移文件(Migrations)
    • 多数据库原理
    • 数据库停机坪(DatabasePlant)
    • 停机坪操作数据库迁移和更新
  • 单元测试

    • NCF 单元测试介绍
    • 开始开发
    • 进阶
    • 附录
  • Q&A

    • NCF名词解释
    • NCF常见问题
  • 新发布

    • 新功能
    • 升级指导
    • 日志

指定数据库

NCF 可以通过便捷的方式,快速指定数据库指,切换完成后,重新运行,数据库可以无缝迁移。

以下以 MySQL 为例,介绍如何快速切换数据库。其他数据库操作方式一致,只需将过程中 MySql 改成对应数据库名称即可,当然您可能还需要设置对应正确的数据库连接字符串。

如何快速切换 Mysql

Step1.修改 SenparcConfig.config

首先 在Senparc.Web\App_Data\DataBase 目录中找到 SenparcConfig.config 文件,修改 Mysql 节点为如下形式

	<SenparcConfig>
		<Id>4</Id>
		<Name>Local-MySql</Name>
		<!--本地Demo默认数据库(可在appsettings.json中修改DatabaseName配置)-->
		<ConnectionStringFull>
			<![CDATA[Server=localhost;Database=NCF;Uid=root;Pwd=root;]]></ConnectionStringFull>
		<ApplicationPath><![CDATA[/]]></ApplicationPath>
	</SenparcConfig>

Step2.修改 Senparc.Web.csproj 文件

添加以下 Senparc.Ncf.Database.MySql 引用:

<PackageReference Include="Senparc.Ncf.Database.MySql" Version="0.11.3-beta7" />

Step3.修改启动文件的数据库选项

方法一:修改 appsettings.json 文件(推荐)

此方法不修改任何需要编译的文件,只需要修改配置文件 appsetting.json 即可。

找到 Senparc.Web\appsettings.json 文件,修改 SenparcCoreSetting 节点下的 DatabaseName 由默认的 Sqlite 改为 MySql:

  "SenparcCoreSetting": {
	//...

    "DatabaseName": "Local", // 对应:AppData/DataBase/SenparcConfig.config 中,所需要使用的数据库连接的 <SenparcConfig> 节点的 Name 前缀
    "DatabaseType": "MySql"

	//...
  },

方法二:通过修改代码实现:

找到 \NCF\src\Senparc.Web\Program.cs 文件代码:

app.UseNcf<BySettingDatabaseConfiguration>();

将 BySettingDatabaseConfiguration 改为 MySqlDatabaseConfiguration:

app.UseNcf<MySqlDatabaseConfiguration>();
【注意事项】:由于 EFCore 基础库支持的原因,Mysql 的引擎必须为 InnoDB ,如果设置的为 Mylsam,则在运行时会报错,报错信息如下

异常处理:修改 Mysql 的配置后,启动报错

如何快速切换 SqlServer

同切换 Mysql。

切换完成后,运行会显示,下同。

如何快速切换 Sqlite

同切换 Mysql。

如何快速切换 Oracle

同切换 Mysql。

如何快速切换 达梦数据库(Dm)

同切换 Mysql。

在 GitHub 上编辑此页
上次更新:
贡献者: MLTechnology, Jeffrey Su
Prev
多数据库支持
Next
更新 Senparc.Service 项目的数据库迁移文件(Migrations)