将视图批量新增到PowerDesigner中并以model图表的形式展示
1:需求
数据库中的所有视图大概64个左右,都需要新增到PowerDesigner中,以图表(model)的形式给展示出来,如下:
2:问题点:
由于2020年春节期间病毒的原因,我们需要远程办公,新的数据库上面并没有存在视图,
数据库上面并没有存在视图,这个改怎么导入到PowerDesigner上面去(以图形的PDM的可视化显示出来)
看了实体的模型,字段都有几十个的样子,太长。如果手动一个一个的新增到PowerDesigner上面,工作量太大,也会出错或者是遗漏的情况!
3:解决问题的思路:
3.1:由于Model层里面有视图的实体,我这边就单独再生成到一个临时的数据库中(生成一张一张的表);
3.2:CodeFirest的时候发现,报错提示存在多个DbContent对象。这里先新增一个表,及新增permary key,看是否生成OK,成功之后再批量生成表到数据库
这里需要我们给指定一下,如:1:add-migration init -c LoseViewContecnt 2:update-datebase -c LoseViewContent
3.3: 实在不想写 public DbSet<*****> **** { get; set; } 这样重复的代码,这里就写了一个批量生成代码的临时小工具
string assemblyPath = @"D:\MyCore3.1Test\LoseViewTable\bin\Debug\netcoreapp3.1\LoseViewTable.dll";
Assembly assembly = Assembly.LoadFrom(assemblyPath);
StringBuilder sb = new StringBuilder();
if (assembly!=null)
{
Type[] typeList= assembly.GetTypes();
foreach (var item in typeList)
{
string name = "public DbSet<" + item.Name + "> " + item.Name + "{ get; set; }<br/>";
sb.Append(name);
}
}
ViewBag.result = sb.ToString();
return View(); <body>
@Html.Raw(@ViewBag.result)
</body>
3.4://--将批量生成到临时的N多代码拷贝到这里
public class LoseViewContent : DbContext{ public DbSet<get_class_course_group_view> get_class_course_group_view { get; set; } ***** }
3.5:批量生成表到一个临时的数据库
add-migration addTables02 -c LoseViewContent
update-database -c LoseViewContent
4:从Powerdesigner批量添加表
4.1 选中要新增到的PDM 右击Database
4.2 update model From DataBase
4.3 新增ODBC对应的配置文件,建议不要在里面写密码,如果是自己的电脑可以写入密码
4.4 选中好对应的User即数据库名称
4.5 OK开始批量新增模型到PowerDesigner
将视图批量新增到PowerDesigner中并以model图表的形式展示的更多相关文章
- (转) PowerDesigner中Table视图同时显示Code和Name
PowerDesigner中Table视图同时显示Code和Name,像下图这样的效果: 实现方法:Tools-Display Preference
- 【转】PowerDesigner中Table视图同时显示Code和Name
为避免图片失效,文字描述, Tools-Display Preference-->左侧Table-->右下角Advanced-->左侧树Columns-->右侧上面第一个放大镜 ...
- PowerDesigner中Table视图怎样同时显示Code和Name
1.创建一个简单table视图步骤: 1)打开软件,创建model,选择Physical Data
- MP实战系列(十九)之批量新增
批量操作在实际开发中也应用非常多,例如批量下发优惠券.批量添加用户等. 以MyBatis为例,通常实现批量操作,有这么几种方式? 第一,单条插入sql语句,进行for循环遍历,基准条件是根据前端传过的 ...
- 批量解密SQLSERVER数据库中的各种对象的工具dbForge SQL Decryptor
批量解密SQLSERVER数据库中的各种对象的工具dbForge SQL Decryptor2.1.11 之前写过一篇文章,使用redgate公司的SQL PROMPT工具,但是不太方便 SQLPRO ...
- 在powerdesigner中创建物理数据模型
物理数据模型(PDM)是以常用的DBMS(数据库管理系统)理论为基础,将CDM/LDM中所建立的现实世界模型生成相应的DBMS的SQL语言脚本.PDM叙述数据库的物理实现,是对真实数据库的描述 PDM ...
- mybatis,批量新增、修改,删除
转载自:http://blog.csdn.net/sanyuesan0000/article/details/19998727 最近需要用到Mybatis批量新增oracle数据库,刚开始在网上找到的 ...
- powerdesigner中反向postgresql
一.下载驱动 https://jdbc.postgresql.org/download.html 在cmd中查看本机jdk的版本,然后再到上面的网页中下载对应的jar 二.设置环境变量 JAVA_HO ...
- mybatis学习之路----mysql批量新增数据
原文:https://blog.csdn.net/xu1916659422/article/details/77971867 接下来两节要探讨的是批量插入和批量更新,因为这两种操作在企业中也经常用到. ...
随机推荐
- C++第五十篇 -- 获取串口的描述信息
如何知道自己的电脑上有无串口呢? -- 手动 1. 查看电脑,看是否有串口器件(串口是一个九针的D型接口) 2. 在设备管理器上查看 乍一看,还以为是有两个串口,其实仔细看描述就知道,这是蓝牙虚拟串口 ...
- GhostScript 沙箱绕过(命令执行)漏洞(CVE-2018-16509)
影响范围: Ghostscript 9.24之前版本 poc地址 https://github.com/vulhub/vulhub/blob/master/ghostscript/CVE-2018-1 ...
- 题解CF757B
题目 题意:在 \(s\) 数组中找出尽可能多的数使得他们的最大公约数 \(>1\) 既然最大公约数 \(>1\),\(s\) 数组的值域是 \(1 \le s_i \le 10^5\), ...
- Flutter学习(7)——网络请求框架Dio简单使用
原文地址: Flutter学习(7)--网络请求框架Dio简单使用 | Stars-One的杂货小窝 Flutter系列学习之前都是在个人博客发布,感兴趣可以过去看看 网络请求一般APP都是需要的,在 ...
- 手脱UPX壳的方法
0X00 了解 upx UPX作为一款元老级PE加密壳,在以前的那个年代盛行,著名病毒[熊猫烧香]就是使用这款加密壳. 0X01 单步跟踪法 就是使用ollydbg加载程序后,按F8进行单 ...
- OOP面向对象程序设计原则
OOP面向对象程序设计原则 开闭原则(Open Close Principle) 对扩展开放,对修改关闭 里氏代换原则(Liskov Substitution Principle) 继承必须确保超累所 ...
- .NetCore+OpenSSL实现Https
前言 最近,有时间研究了一下HTTPS安全通信的原理,感兴趣的同学可以看下上一篇博文深入理解Https如何保证通信安全 ,随即联想到近段时间开发的.NetCore项目,.NetCore API应用程序 ...
- MVVM窗体show的弹窗事件
RestMatCutWin restMatCutWindow;//定义一个窗体的全局变量 private void RestMatCutWinExecute() { if (restMatCutWin ...
- rabbitMQ批量删除指定的队列
首先进入到rabbitmq目录下的sbin目录 方法1: ./rabbitmqctl list_queues| grep helloQueue | awk '{print $1}' | xargs - ...
- 关于解决numpy使用sklearn时的警告问题
关于解决numpy使用sklearn时的警告问题 在使用的时候,出现提示 :219: RuntimeWarning: numpy.ufunc size changed, may indicate bi ...