PowerDesigner如何将设计的表更新到数据库中
前言:
软件开发的过程中,将设计的表更新到数据库中是一件繁琐的事情,使用好工具,能够事半功倍。
环境介绍:Oracle 11g x64
前期准备:
1.PowerDesigner工具(本人是32位的)
2.Odbc驱动
3.创建好表空间,用户,以及赋予权限。
实际操作步骤:
第1步:
执行如下命令,创建表空间、表、用户、为用户赋值权限:
CREATE SMALLFILE TABLESPACE TS(你自己的表空间)DATAFILE 'D:\app\用户(你自己的目录)\oradata\orcl\DB_NAME(你自己的数据库名称)' SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ;
CREATE USER USER_NAME(你自己的用户名) PROFILE DEFAULT IDENTIFIED BY PWD(你自己的密码) DEFAULT TABLESPACE TS(你自己的表空间) TEMPORARY TABLESPACE TEMP ACCOUNT UNLOCK;
GRANT DBA TO USER_NAME(你自己的用户名,根据实际需要赋值权限);
第2步:
根据当前系统数据库环境,添加ODBC驱动。
2.1下载驱动
驱动下载地址:http://www.oracle.com/technetwork/topics/winsoft-085727.html 。
下载: instantclient-basic-nt-11.2.0.4.0.zip 和 instantclient-odbc-nt-11.2.0.4.0.zip
注意:此处因为我的PowerDesigner是32位的,所以选择的驱动都是32位,如果您是64位,也可以选择64位。同时,因为我的数据库是11g,顾选择的版本是11.2.0.4.0,如果您的是12c,请选择高版本,高版本不兼容低版本。
下载地址为:http://www.oracle.com/technetwork/topics/winx64soft-089540.html ,分别下载: instantclient-basic-windows.x64-11.2.0.4.0.zip 和 instantclient-odbc-windows.x64-11.2.0.4.0.zip 。
2.2解压驱动
将驱动解压到同一个目录,如:C:\ODBC_11g_X32

2.3通过CMD安装
以管理员身份运行CMD命令,输入:cd /d C:\ODBC_11g_X32 回车

再输入:odbc_install.exe 回车,此时会提示安装成功(因为先前安装过,提示已经存在了)

第3步:通过PowerDesigner创建相关的表


第4步:将表导入数据库中
4.1通过PowerDesigner创建ODBC数据源连接
DataBase --> Generate DataBase

选择:Direct generation,然后点击右侧的连接数据库源

打开连接数据库源,选择Congiure(配置,由于我先前都做了一次,所以我这里截图全部存在)

配置数据源:新建(点击红色方框标记处)

选择:文件数据源-->下一步

找到先前安装的odbc驱动

点击浏览,选择数据源存放的位置,并为数据源起名

如:起名为“我的数据源”,存放到D盘根目录(这里大家随意,只要用的时候记住就好,我一般是和PowerDesigner的数据设计文件存放在一起)

点击完成

填写服务名称,账号,密码等,注意服务名称是你本地oracle数据库的服务名称,填写格式为:localhost:1521/ORCL
注意:由于我是本机的oracle,以及端口为默认的1521,同时数据库服务名称名为ORCL,顾如此填写。

点击OK,新建好数据源,选择 ODBC FILE Data Sources ,浏览,找到新建好的数据源
、

4.2准备更新表
下面测试设计的表是否能正常更新到数据库中,如图,我的 T_WX_GZH_CONFIG 目前只有:WX_CONFIG_ID、WX_GZH_ID、WX_CONFIG_NAME、WX_CONFIG_VAL、ADD_DT等几个字段

在PD中添加新字段,添加一列叫做字典序

4.3操作更新
同样是:DataBase --> Generate DataBase (注意,在物理模型中操作,不是概念模型)

general中选择 表和视图

options选择中也只选择表和视图,如果选择其他的,你的Preview里面的代码会多出修改你表空间,用户等sql

Format中,勾选相关操作,名称自动替换空的备注,然后选择简体中文编码

selection中选择你所要更新的表

summary的截图,里面存放你的sql文件位置

Preview截图,你所要更新表的sql语句

点击确定

点击是

再点击是

点击RUN,提示执行成功

在数据库中查看表,看看新加的字段是否添加上去


这样,你就完成了表的更新。但是,注意这种方法的缺点,这种更新是需要先删除掉表,再创建,如果你有重要数据,请先备份,不然后悔莫及。
PowerDesigner如何将设计的表更新到数据库中的更多相关文章
- MySQL进阶:约束,多表设计,多表查询,视图,数据库备份与还原
MySQL进阶 知识点梳理 一.约束 1. 外键约束 为什么要有外键约束 例如:一个user表,一个orderlist 如果现在想要直接删除id为1的张三,但是orderlist里还有用户id为1的订 ...
- 如何在大型的并且有表分区的数据库中进行DBCC CHECKDB操作
如何在大型的并且有表分区的数据库中进行DBCC CHECKDB操作 其实这个问题已经在<SQLSERVER企业级平台管理实践>里徐老师已经讲过了,不过我想用自己的语言再讲详细一些 笔记链接 ...
- PowerDesigner如何把建好的表导入到数据库中,并且把注释也导入进去
第一次接触这个软件,经过自己的捣鼓和百度,终于可以顺利的导入数据库中了,好开森,希望可以帮助到更多人. 数据库(mysql)其实和sqlserver差不多,以16.5版本为例 1.选中一个PDM项目, ...
- oracle不小心更新了数据库中的所有内容后的恢复
开发过程中,在更新数据库中的某一条数据时,由于疏忽忘记加where判断条件了,这时更新会提示是否要更新全部数据,但是由于自己没有仔细看提示导致直接点确定并commit了,导致数据库中所有数据的相关字段 ...
- 一个简单的批量更新oracle 数据库中 最近的服务商名称的数据
有一个需求是这样的,我们需要更新数据库中的数据,数据时这样的 1.大约50万以上 2. 数据中有较多的重复数据 3. 需要将表中最近的代理商的名称赋值给行中的服务商名称 4. 代理商的名称可能有多个, ...
- 如何将EXCEL表导入ORACLE数据库中?【转】
来源:https://zhidao.baidu.com/question/383828330.html?qbl=relate_question_2&word=excel%20%B1%ED%CA ...
- yii2中判断数据表是否存在数据库中(原创)
分为两步: 第一步,找出数据库中所有表名,表名得到的是二维数组. 第二步,判断表名是否存在二维数组中 下面就贴我的代码咯. $table_name =‘table’; $juge = $handle- ...
- MySQL学习笔记_时间,多表更新,数据库元数据
MySQL技术内幕一.MySQL基础知识1.1.显示表中的列SHOW COLUMNS FROM order_info like 'order%'1.2.显示表SHOW TABLES LIKE 'ord ...
- 通过表名显示数据库中该表的表头和内容(mysql扩展库操作)
编写一个函数,接收一个表名,然后把表的表头和内容显示在网页 <?php function readTab($tableName){ $conn=mysql_connect("local ...
随机推荐
- 谈谈java虚拟机
本文可作为北京圣思元深入java虚拟机的课堂笔记. 先看一个令人dan teng的面试题 public class Singleton { public static Singleton s=new ...
- 用简单的C语言实现多任务轮流切换(模拟操作系统线程机制)
最近在看linux内核的进程调度算法,也写了不少的内核注释,也参考了鸿哥的单片机框架,代码注释就开源在我的CSDN的git代码库里,有兴趣的可以去瞧瞧. 突发奇想,想到了既然单片机能够实现,那么我用标 ...
- OpenCV+OpenCL stereo match 代码
之前配置cuda跟opencv 的混合编程,发现只要使用的东西多半还要用opencv的代码编译一次,加上cuda的编译太浪费时间了,我看了几个博客,觉的opencl这个可能会比较好整,就把opencv ...
- SQL 是一门美丽的语言 她来自艺术
有一种语言可以从诞生一直活跃到现在,有一个梦想从南四楼蔓延到北五楼再走向世界,有一种坚持可以从懵懂年少成长为干练成熟,有一本书可以温暖心灵彼岸,与数据库抨击撞出火花,有一个系统足以让你忘 ...
- CSS 文章链接
文本溢出显示为省略号 Ellipsis for text overflow in table cell?
- JFreeChart时间轴固定24小时每天刷新
Timeseries时间轴,设置x轴固定长度24小时 xAxis.setFixedAutoRange(3600000 * 2D), 再画出当天24点这一点 Date day = new Date(); ...
- Android Studio 插件开发详解三:翻译插件实战
转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/78113868 本文出自[赵彦军的博客] 一:概述 如果不了解插件开发基础的同学可以 ...
- Flipping Parentheses~Gym 100803G
Description A string consisting only of parentheses '(' and ')' is called balanced if it is one of t ...
- Redis的Java使用入门
因项目需要,最近简单学习了redis的使用 redis在服务器centos环境下安装比较简单. 如果要在windows上安装,可以参考别人的文章 http://blog.csdn.net/renfuf ...
- php获取指定目录下的所有文件列表
在我们实际的开发需求中,经常用到操作文件,今天就讲一下关于获取指定目录下的所有文件的几种常用方法: 1.scandir()函数 scandir() 函数返回指定目录中的文件和目录的数组. scandi ...