当前位置: 首页 > news >正文

C#调用SqlSugar操作达梦数据库报错“无效的表或视图名”

  安装达梦数据库后,使用SqlSugar连接测试数据库并基于DBFirst方式创建数据库表对应的类,主要代码如下:

SqlSugarClient db = new SqlSugarClient(new ConnectionConfig(){DbType = DbType.Dm,ConnectionString = "Server=localhost; User Id=SYSDBA; PWD=XXXXXXXX;DATABASE=PERSON",IsAutoCloseConnection = true});db.DbFirst.CreateClassFile("Models", "XXXXXX.Models");

  运行到CreateClassFile函数时报如下错误:
在这里插入图片描述

SqlSugar.SqlSugarExceptionHResult=0x80131500Message=Table 'ADDRESS' error,You can filter it with Db.DbFirst.Where(name=>name!="ADDRESS" ) Error message:1 行附近出现错误:
无效的表或视图名[ADDRESS]Source=SqlSugarStackTrace:at SqlSugar.Check.Exception(Boolean isException, String message, String[] args)at SqlSugar.DbFirstProvider.ToClassStringList(String nameSpace)at SqlSugar.DbFirstProvider.CreateClassFile(String directoryPath, String nameSpace)at TestDM.Program.Main(String[] args) in \TestDM\Program.cs:line 18

  通过达梦管理工具查看数据库,PERSON数据库下有ADDRESS表,不清楚为什么报错。
在这里插入图片描述

  百度错误信息,检索结果中介绍可能是表名前需添加模式名,如访问ADDRESS表的话,应使用PERSON.ADDRESS,于是在参考文献1中查看如何设置模式名,找到如下说明:
在这里插入图片描述

  于是在代码的连接字符串中增加SCHEMA,并赋值为模式名,同时在DbFirst函数后增加表筛选函数,最终代码如下所示,此时即可正常创建PERSON模式下的表对象类文件。

SqlSugarClient db = new SqlSugarClient(new ConnectionConfig(){DbType = DbType.Dm,ConnectionString = "Server=localhost; User Id=SYSDBA; PWD=XXXXXXXX;SCHEMA=PERSON;DATABASE=PERSON",IsAutoCloseConnection = true});db.DbFirst.Where(name=>name.StartsWith("ADDRESS")||name.StartsWith("PERSON")).CreateClassFile("Models", "XXXXXXXX.Models");

  
  

参考文献:
[1]https://www.donet5.com/Home/Doc?typeId=1229
[2]https://eco.dameng.com/document/dm/zh-cn/app-dev/dot-Net-Data-Provider.html

相关文章:

  • 消息中间件之八股面试回答篇:三、RabbitMQ如何解决消息堆积问题(100万条消息堆积)+RabbitMQ高可用性和强一致性机制+回答模板
  • Datawhale 组队学习Task8大模型的有害性(上/下)
  • 毕业找工作只会C语言是不是完蛋了?
  • 当代码遇上玄学……
  • SRE-Redis基本概念篇
  • 初识elasticsearch
  • 内网安全:NTLM-Relay
  • 幻兽帕鲁服务器出租,腾讯云PK阿里云怎么收费?
  • 计算机网络——网络层(2)
  • c#之构值类型和引用类型
  • 4核16G幻兽帕鲁服务器优惠价格表,阿里云和腾讯云报价
  • ES 分词器
  • Android源码设计模式解析与实战第2版笔记(一)
  • RabbitMQ-如何保证消息不丢失
  • Sentinel背后的原理:守卫你的代码安全之旅
  • -------------------- 第二讲-------- 第一节------在此给出链表的基本操作
  • git 常用命令
  • JavaScript 基础知识 - 入门篇(一)
  • Java读取Properties文件的六种方法
  • JDK9: 集成 Jshell 和 Maven 项目.
  • Js基础知识(四) - js运行原理与机制
  • js继承的实现方法
  • Markdown 语法简单说明
  • PAT A1092
  • Spring思维导图,让Spring不再难懂(mvc篇)
  • 案例分享〡三拾众筹持续交付开发流程支撑创新业务
  • 基于 Ueditor 的现代化编辑器 Neditor 1.5.4 发布
  • 利用jquery编写加法运算验证码
  • 前端临床手札——文件上传
  • 嵌入式文件系统
  • 使用 Xcode 的 Target 区分开发和生产环境
  • 物联网链路协议
  • 要让cordova项目适配iphoneX + ios11.4,总共要几步?三步
  • 一道闭包题引发的思考
  • 智能合约开发环境搭建及Hello World合约
  • 走向全栈之MongoDB的使用
  • SAP CRM里Lead通过工作流自动创建Opportunity的原理讲解 ...
  • Spring Batch JSON 支持
  • ​ 轻量应用服务器:亚马逊云科技打造全球领先的云计算解决方案
  • #【QT 5 调试软件后,发布相关:软件生成exe文件 + 文件打包】
  • $.proxy和$.extend
  • (7)STL算法之交换赋值
  • (板子)A* astar算法,AcWing第k短路+八数码 带注释
  • (附源码)计算机毕业设计ssm本地美食推荐平台
  • (机器学习-深度学习快速入门)第三章机器学习-第二节:机器学习模型之线性回归
  • (接口自动化)Python3操作MySQL数据库
  • (全部习题答案)研究生英语读写教程基础级教师用书PDF|| 研究生英语读写教程提高级教师用书PDF
  • (生成器)yield与(迭代器)generator
  • (十七)Flask之大型项目目录结构示例【二扣蓝图】
  • (译)计算距离、方位和更多经纬度之间的点
  • .a文件和.so文件
  • .net CHARTING图表控件下载地址
  • .net core 连接数据库,通过数据库生成Modell
  • .NET Core、DNX、DNU、DNVM、MVC6学习资料
  • .net 简单实现MD5