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 ...
随机推荐
- Struts2(XWork)中的Container 一
本文是<<struts2 技术内幕>>的学习笔记 在进行面向对象编程的时候,我们不可避免地要使用继承实现等等java提供的语法支持.但是复杂的对象关系也为对象生命周期的管理带来 ...
- AngularJS进阶(七)实现根据不同条件显示不同控件
AngularJS实现根据不同条件显示不同控件 由于项目需求,需要实现根据不同条件显示不同控件的功能.具体要求如下图所示: 即当选择"每单固定减"时,下方只显示"减免金额 ...
- objective-c随机数+日期格式显示一例
在原来的代码上有修改,主要为: 将准备随机数方法放到了init中,这样不用手动调用了 setWeek方法已经过时,使用的是setWeekOfYear方法 在此放一份以备以后查找: le.h // // ...
- C语言二维数组实现扫雷游戏
#include<stdio.h> //使用二维数组实现 扫雷 int main() { char ui[8][8]={ '+','+','+','+','+','+','+','+', ...
- obj-c编程06:反射与元编程初步
我们知道对于现如今的动态语言比如ruby而言,反射和元编程以及支持的非常灵活了,你完全可以跳过常规的手段,而利用反射来查询或调用对象的私有方法.而obj-c对反射的支持略显小繁琐,而且在开了ARC后同 ...
- LeetCode(45)-Bulls and Cows
题目: You are playing the following Bulls and Cows game with your friend: You write down a number and ...
- 【作业2.0】HansBug的5-7次OO作业分析与小结,以及一些个人体会
不知不觉又做了三次作业,容我在本文胡言乱语几句2333. 第五次作业 第五次作业是前面的电梯作业的多线程版本,难度也有了一些提升.(点击就送指导书) 类图 程序的类图结构如下: UML时序图 程序的逻 ...
- Yii2.0源码阅读-PHP如何与redis通信?
PHP与Redis可以通过socket进行通信,前提是PHP需要实现Redis的协议 RESP协议描述: 字符串 \r\n : 表示一个正确的状态信息,具体信息是'+'后面的字符(Simple Str ...
- 初识java——运算符和表达式以及注释
java中有不同的运算符,并且在运算中有着优先级的排序计算,其中++和——的优先级最高,最先计算 运算符注意:1,增量和减量运算符++,——. int a=1++; int b=++1; 其中1++表 ...
- Nginx SSL功能支持的一些资料。
http://wiki.nginx.org/HttpSslModulehttp://zou.lu/nginx-https-ssl-module/http://www.21andy.com/blog/2 ...