PowerDesigner常用設置

2019獨角獸企業重金招聘Python工程師標準>>> hot3.png

使用powerdesigner進行數據庫設計確實方便,以下是一些常用的設置

附加:工具欄不見了

調色板(Palette)快捷工具欄不見了

PowerDesigner 快捷工具欄 palette 不見了,怎么重新打開,找回來呢

上網搜索了一下”powerdesigner 圖形工具欄”,找到了找回PowerDesigner工具欄palette的方法
Tools(工具欄)
customsize toolbars(自定義工具欄)
palette(調色板)勾選?

?

修改外鍵命名規則

選擇Database—>Edit Current DBMS
選擇Scripts-》Objects-》Reference-》ConstName
可以發現右側的Value為:

FK_%.U8:CHILD%_%.U9:REFR%_%.U8:PARENT%

可見,該命名方法是:'FK_'+8位子表名+9位Reference名+8位父表名,你可以根據這中模式自定義為:

FK_%.U7:CHILD%_RELATIONS_%.U7:PARENT%,

可以使FK名稱變為FK_TABLE_2_RELATIONS_TABLE_1
掌握這種方法后就可以按照自己的想法修改了

生成建庫腳本SQL文件中的表頭注釋很討厭,可以在 Databse -> Generate Database (Ctrl+G)窗口中,選擇Options卡片,去掉Usage的Title鉤選項即可。

添加外鍵
Model -> References新建一條外鍵后,雙擊進入外鍵屬性,在“Joins”卡片中可以選擇子表的外鍵字段

?

如何實現Name和code不自動相等
如何實現在CDM中創建Entity時,Name和Code不自動對應

設置tools--Gerneral options--->dialog---->name to code mirroring

-------------------------------------

如何把NAME 列在 scrip里顯示出來

修改字段生成規則。要給每個字段都添加一個注釋的話,同一窗口中展開 Script -> Object -> Column -> Add 的 Value修改為:

%20:COLUMN% [%COMPUTE%?AS (%COMPUTE%):%20:DATATYPE% [%IDENTITY%?%IDENTITY%:[%NULL%][%NOTNULL%]][ default %DEFAULT%]
???? [[constraint %CONSTNAME%] check (%CONSTRAINT%)]]

其中的%COLNNAME%就是列的Name值(可以是中文)

---------------------------------------------------------------------------------

POWERdESIGEN 自增長列的設置

PDM里查看表的屬性,Columns選項卡,選中整列,查看列屬性,點左上方的properties圖標(有手形圖案的那個),此時打開一個設置窗口,General選項卡里面進行設置.??
在列屬性的General標簽頁里有個Identity復選框,勾上就行了

--------------------------------------
1 如何在PowerDesigner下建索引
2 如何在PowerDesigner 下建自增列
3 如何在PowerDesigner 下檢查設計模型

1 如何在PowerDesigner下建索引
1 雙擊表設計圖,出來Table Properties,在Tab 頁中選擇 Indexes

2 單擊新建索引的屬性,出現Indexex Properties

3 增加一個索引包含的字段

2 如何在PowerDesigner 下建自增列
2 使用SqlServer 數據庫中的下列語句來完成
建表語句中,在要做為自增列的字段中,加上如下
IDENTITY(1,1)
還有可以使用下面語句,重置自增種子
dbcc checkident(ConfigSys,reseed,0);
3 如何在PowerDesigner 下檢查設計模型
1 在菜單欄中選擇 Tools -? Check Model, 如下圖

2 選擇要檢查的每項設置

3 確定后,將出來檢查結果匯總信息





這段時間,使用PD做數據庫模型,感覺很不錯,將自已的經驗總給一下.還有許多功能我沒時間總結,以后有時間,繼續補吧
1 如何在PowerDesigner下建索引
2 如何在PowerDesigner 下建自增列
3 如何在PowerDesigner 下檢查設計模型

1 如何在PowerDesigner下建索引
1 雙擊表設計圖,出來Table Properties,在Tab 頁中選擇 Indexes

2 單擊新建索引的屬性,出現Indexex Properties

3 增加一個索引包含的字段

2 如何在PowerDesigner 下建自增列
2 使用SqlServer 數據庫中的下列語句來完成
建表語句中,在要做為自增列的字段中,加上如下
IDENTITY(1,1)
還有可以使用下面語句,重置自增種子
dbcc checkident(ConfigSys,reseed,0);
3 如何在PowerDesigner 下檢查設計模型
1 在菜單欄中選擇 Tools -? Check Model, 如下圖

2 選擇要檢查的每項設置

3 確定后,將出來檢查結果匯總信息


在 powerdesigner 中設置 自增 得索引不用那么麻煩,其實只要在 概念模型 中在屬性中把columns中要自增得字段得類型設置成為 serial 就可以了!

?

1。使用PowerDesigner檢查數據庫設計錯誤~

PowerDesigner 還可用于快速檢測新模型中的數據庫設計錯誤。

檢查新的模式:

從 [Tools] 菜單中選擇 [Check Model]。

此時,就會出現 [Check Model Parameters] 對話框。可以使用缺省參數。

另外也可以直接在空白處單擊右鍵,選擇Check Model...即可,我一般喜歡這樣用。

單擊 [確定]。

此時,在 [Result List] 中就會顯示 [Check Model] 的結果。

2。如何將Conceptual Data Model (CDM)轉換成Physical Data Model(PDM)?

?

即將概念數據模型轉換成物理數據模型。

二者的區別是,CDM是純粹概念上的模型,PDM是和具體的數據庫類型相關的,比如SQL Server 2000或者Oracle。生成SQL語句當然也就需要從PDM生成。

?

在菜單上選擇Tools -> Generate Phisical Data Model

?

最后選擇你的數據庫類型,即可。

?

3。使用PowerDesigner生成SQL語句~

?

可以使用 PowerDesigner 生成一個 SQL 腳本,該腳本用于實施模型的所有組件。然后,使用 SQL 腳本生成一個數據庫。

這時候要確保你用的是PDM。

生成 SQL 腳本以新建數據庫:

從 [Database] 菜單中選擇 [Generate Database]。

此時,就會出現 [Database Generation] 對話框

在 [Directory] 字段中鍵入 c:Temp,并在 [File Name] 字段中鍵入 NewDemo.sql。

確保選中了 [ Generation]。

單擊 [Database] 選項卡,并確保選中了 [Create Database]。

瀏覽其它選項卡,以查看控制所生成腳本的許多其它屬性的選項。

單擊 [確定]。

創建腳本后,就會出現 [Result] 對話框。

4。為什么出現Warning : table Existence of index 表名 ?

?

說明該表沒有建立索引。不過這是一個警告,不是錯誤,可以不用理會它。

?

5。如何建立聯合主鍵?

?

聯合主鍵就是一個表里面有多個主鍵,比如一份學生選課的表里面,學生ID和課程ID就同時是主鍵。

?

在設置Attributes,把2個字段的P那項都勾上,P表示Primary Key主鍵。

?

6。如何建立外鍵Foreign Key?

?

在PowerDesigner中,通過建立關系Relationship就可以自動建立外鍵,不需要手動添加。

?

而建立Relationship有2種辦法:可以通過菜單選擇Model -> Relationships...,也可以通過在右邊的工具欄中拖拽Relationship控件。

?

7。如何生成數據字典?

?

通過菜單Report -> Report Wizard...可以生成

注意可以選擇Template.因為我是通過PDM生成,所以選擇了Standard Physical Template~

1、安裝PD v11.0版

2、由pdm生成建表腳本時,字段超過15字符就發生錯誤(oracle
原因未知,解決辦法是打開PDM后,會出現Database的菜單欄,進入Database - Edit Current DBMS -script-objects-column-maxlen,把value值調大(原為30),比如改成60。出現表或者其它對象的長度也有這種錯誤的話都可以選擇對應的objects照此種方法更改!
或者使用下面的這種方法:
生成建表腳本時會彈出Database generation提示框:把options - check model的小勾給去掉,就是不進行檢查(不推薦)!
或者可以修改C:\Program Files\Sybase\PowerDesigner Trial 11\Resource Files\DBMS\oracl9i2.xdb文件
修改好后,再cdm轉為pdm時,選擇“Copy the DBMS definition in model”把把這個資源文件拷貝到模型中。

3、生成的建表腳本中如何把對象的雙引號去掉?
打開cdm的情況下,進入Tools-Model Options-Naming Convention,把Name和Code的標簽的Charcter case選項設置成Uppercase或者Lowercase,只要不是Mixed Case就行!
或者選擇Database->Edit current database->Script->Sql->Format,有一項CaseSensitivityUsingQuote,它的 comment為“Determines if the case sensitivity for identifiers is managed using double quotes”,表示是否適用雙引號來規定標識符的大小寫,可以看到右邊的values默認值為“YES”,改為“No”即可!
或者在打開pdm的情況下,進入Tools-Model Options-Naming Convention,把Name和Code的標簽的Charcter case選項設置成Uppercase就可以!

4、建立一個表后,為何檢測出現Existence of index的警告
A table should contain at least one column, one index, one key, and one reference.
可以不檢查 Existence of index 這項,也就沒有這個警告錯誤了!
意思是說沒有給表建立索引,而一個表一般至少要有一個索引,這是一個警告,不用管也沒有關系!

5、創建一個表在修改字段的時候,一修改name的內容,code也跟著變化,如何讓code不隨著name變化
Name和Code 的右側都有一個按鈕“=”,如果需要不同步的話,把這個按鈕彈起來就可以了。
Tools->General Options->Dialog->Name to Code Mirroring (去掉)

6、由CDM生成PDM時,自動生成的外鍵的重命名
PDM Generation Options->Detail->FK index names默認是%REFR%_FK,改為FK_%REFRCODE%,其中%REFRCODE%指的就是CDM中Relationship的code!另外自動生成的父字段的規則是PDM Generation Options->Detail->FK column name template中設置的,默認是%.3:PARENT%_%COLUMN%,可以改為Par%COLUMN%表示是父字段!

7、如何防止一對一的關系生成兩個引用(外鍵)
要定義關系的支配方向,占支配地位的實體(有D標志)變為父表。
在cdm中雙擊一對一關系->Detail->Dominant role選擇支配關系

8、修改報表模板中一些術語的定義
即文件:C:\Program Files\Sybase\PowerDesigner Trial 11\Resource Files\Report Languages\Chinese.xrl
Tools-Resources-Report Languages-選擇Chinese-單擊Properties或雙擊目標
修改某些對象的名稱:Object Attributes\Physical Data Model\Column\
??????? ForeignKey:外鍵
??????? Mandatory:為空
??????? Primary:主鍵
??????? Table:表
用查找替換,把“表格”替換成“表”
修改顯示的內容為別的:Values Mapping\Lists\Standard,添加TRUE的轉化列為是,FALSE的轉化列為空
另外Report-Title Page里可以設置標題信息

?

1。pd中復制一列是,實際上是一個鏈接。源列的變動同時體現在復制列上

2。數據庫設計通常步驟:CDM缺定主要結構--》生成PDM--》在PDM上修改,必要時生成CDM

3。若由pdm生成cdm再生成pdm,在pdm中修改過的外鍵名將被改回到默認值

4。必要時可以通過修改模板(Database-Edit Current DataBase)改變腳本的格式。例如:
Script-Objects-Column-Add的Value中開頭增加一行“--%COLNNAME%”以便在腳本中顯示列的中英文對照

5。去掉討厭的name、code映射:Tools-General Options-clear the Name to Code mirroring check box

6。對于大小寫不敏感的數據庫(如Oracle),PowerDesign在創建腳本時自動給表名和字段名加上雙引號,以“強字符串”形式來獲取區分大小寫,這樣給sql語句的編寫制造很多麻煩。去掉這個添足的功能:
Database -〉Edit Current DBMS -〉Script. -〉Sql -〉Format -〉CaseSensitivityUsingQuote
右邊面板參數值 Value 選擇No

7。由cdm生成pdm,可以控制是否將關系生成引用;由pdm生成腳本,可以控制是否將引用生成外鍵

8。對于oracle而言,為表設置選項(如tablespace GPSSYSTEM)可使其創建到正確的表空間;為主鍵設置選項(using index tablespace GPSINDEX)使索引創建到正確的表空間中

轉載于:https://my.oschina.net/huhaicool/blog/1832739

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/390232.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/390232.shtml
英文地址,請注明出處:http://en.pswp.cn/news/390232.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

bzoj5090[lydsy11月賽]組題

裸的01分數規劃,二分答案,沒了. #include<cstdio> #include<algorithm> using namespace std; const int maxn100005; int a[maxn]; double b[maxn]; double c[maxn]; typedef long long ll; ll gcd(ll a,ll b){return (b0)?a:gcd(b,a%b); } int main(){int n,k;s…

797. 所有可能的路徑

797. 所有可能的路徑 給你一個有 n 個節點的 有向無環圖&#xff08;DAG&#xff09;&#xff0c;請你找出所有從節點 0 到節點 n-1 的路徑并輸出&#xff08;不要求按特定順序&#xff09; 二維數組的第 i 個數組中的單元都表示有向圖中 i 號節點所能到達的下一些節點&#…

深入框架本源系列 —— Virtual Dom

該系列會逐步更新&#xff0c;完整的講解目前主流框架中底層相通的技術&#xff0c;接下來的代碼內容都會更新在 這里 為什么需要 Virtual Dom 眾所周知&#xff0c;操作 DOM 是很耗費性能的一件事情&#xff0c;既然如此&#xff0c;我們可以考慮通過 JS 對象來模擬 DOM 對象&…

網絡工程師常備工具_網絡安全工程師應該知道的10種工具

網絡工程師常備工具If youre a penetration tester, there are numerous tools you can use to help you accomplish your goals. 如果您是滲透測試人員&#xff0c;則可以使用許多工具來幫助您實現目標。 From scanning to post-exploitation, here are ten tools you must k…

configure: error: You need a C++ compiler for C++ support.

安裝pcre包的時候提示缺少c編譯器 報錯信息如下&#xff1a; configure: error: You need a C compiler for C support. 解決辦法&#xff0c;使用yum安裝&#xff1a;yum -y install gcc-c 轉載于:https://www.cnblogs.com/mkl34367803/p/8428264.html

程序編寫經驗教訓_編寫您永遠都不會忘記的有效績效評估的經驗教訓。

程序編寫經驗教訓This article is intended for two audiences: people who need to write self-evaluations, and people who need to provide feedback to their colleagues. 本文面向兩個受眾&#xff1a;需要編寫自我評估的人員和需要向同事提供反饋的人員。 For the purp…

刪除文件及文件夾命令

方法一&#xff1a; echo off ::演示&#xff1a;刪除指定路徑下指定天數之前&#xff08;以文件的最后修改日期為準&#xff09;的文件。 ::如果演示結果無誤&#xff0c;把del前面的echo去掉&#xff0c;即可實現真正刪除。 ::本例需要Win2003/Vista/Win7系統自帶的forfiles命…

BZOJ 3527: [ZJOI2014]力(FFT)

題意 給出\(n\)個數\(q_i\),給出\(Fj\)的定義如下&#xff1a; \[F_j\sum \limits _ {i < j} \frac{q_iq_j}{(i-j)^2}-\sum \limits _{i >j} \frac{q_iq_j}{(i-j)^2}.\] 令\(E_iF_i/q_i\)&#xff0c;求\(E_i\). 題解 一開始沒發現求\(E_i\)... 其實題目還更容易想了... …

c# 實現刷卡_如何在RecyclerView中實現“刷卡選項”

c# 實現刷卡Lets say a user of your site wants to edit a list item without opening the item and looking for editing options. If you can enable this functionality, it gives that user a good User Experience. 假設您網站的用戶想要在不打開列表項并尋找編輯選項的情…

批處理命令無法連續執行

如題&#xff0c;博主一開始的批處理命令是這樣的&#xff1a; cd node_modules cd heapdump node-gyp rebuild cd .. cd v8-profiler-node8 node-pre-gyp rebuild cd .. cd utf-8-validate node-gyp rebuild cd .. cd bufferutil node-gyp rebuild pause執行結果&#xff1…

sql語句中的in用法示例_示例中JavaScript in操作符

sql語句中的in用法示例One of the first topics you’ll come across when learning JavaScript (or any other programming language) are operators. 學習JavaScript(或任何其他編程語言)時遇到的第一個主題之一是運算符。 The most common operators are the arithmetic, l…

vue項目實戰總結

馬上過年了&#xff0c;最近工作不太忙&#xff0c;再加上本人最近比較懶&#xff0c;毫無斗志&#xff0c;不愿學習新東西&#xff0c;或許是要過年的緣故(感覺像是在找接口)。 就把前一段時間做過的vue項目&#xff0c;進行一次完整的總結。 這次算是詳細總結&#xff0c;會從…

Linux !的使用

轉自&#xff1a;https://www.linuxidc.com/Linux/2015-05/117774.htm 一、history    78 cd /mnt/ 79 ls 80 cd / 81 history 82 ls 83 ls /mnt/ !78 相當于執行cd /mnt !-6 也相當于執行cd /mnt 二、!$ cd /mnt ls !$ 相當于執行 ls /mnt轉載于:https://www.cnblogs.…

881. 救生艇

881. 救生艇 第 i 個人的體重為 people[i]&#xff0c;每艘船可以承載的最大重量為 limit。 每艘船最多可同時載兩人&#xff0c;但條件是這些人的重量之和最多為 limit。 返回載到每一個人所需的最小船數。(保證每個人都能被船載)。 示例 1&#xff1a; 輸入&#xff1a;…

使用python數據分析_如何使用Python提升您的數據分析技能

使用python數據分析If youre learning Python, youve likely heard about sci-kit-learn, NumPy and Pandas. And these are all important libraries to learn. But there is more to them than you might initially realize.如果您正在學習Python&#xff0c;則可能聽說過sci…

openresty 日志輸出的處理

最近出了個故障&#xff0c;有個接口的請求居然出現了長達幾十秒的處理時間&#xff0c;由于日志缺乏&#xff0c;網絡故障也解除了&#xff0c;就沒法再重現這個故障了。為了可以在下次出現問題的時候能追查到問題&#xff0c;所以需要添加一些追蹤日志。添加這些追蹤日志&…

誰是贏家_贏家的真正作品是股東

誰是贏家As I wrote in the article “5 Skills to Look For When Hiring Remote Talent,” remote work is a fast emerging segment of the labor market. Today roughly eight million Americans work remotely full-time. And among the most commonly held jobs include m…

博客園代碼黑色主題高亮設置

參考鏈接&#xff1a; https://segmentfault.com/a/1190000013001367 先發鏈接&#xff0c;有空實踐后會整理。我的GitHub地址&#xff1a;https://github.com/heizemingjun我的博客園地址&#xff1a;http://www.cnblogs.com/chenmingjun我的螞蟻筆記博客地址&#xff1a;http…

Matplotlib課程–學習Python數據可視化

Learn the basics of Matplotlib in this crash course tutorial. Matplotlib is an amazing data visualization library for Python. You will also learn how to apply Matplotlib to real-world problems.在此速成班教程中學習Matplotlib的基礎知識。 Matplotlib是一個很棒…

Android 開發使用 Gradle 配置構建庫模塊的工作方式

Android 開發過程中&#xff0c;我們不可避免地需要引入其他人的工作成果。減少重復“造輪子”的時間&#xff0c;投入到更有意義的核心任務當中。Android 庫模塊在結構上與 Android 應用模塊相同。提供構建應用所需的一切內容&#xff0c;包括源代碼&#xff08;src&#xff0…