SlideShare a Scribd company logo
ISOM3260 
Database Design and Administration
Lab 1: Introduction to Labs and Team Project
1
Agenda of today
1. Introducing…
– Myself 
– Lab sessions of the course
– Team project of the course
<<< Short Break >>>
2.  Project case and the requirements
3. Tips for doing the project
2
ISOM3260 Lab (Stage 1) 1
Lab Instructor
Name: Chris Tse
Office: LSK4065
Contact: imchris@ust.hk, 2358‐7653
Office Hours: By Appointment
3
Lab Sessions Schedule
• 3 hours lab per week
LA1 (Thu 3:00pm ‐ 5:50pm)
LA2 (Tue 3:00pm ‐ 5:50pm)
LA3 (Thu 10:30am ‐ 1:20pm)
LA4 (Tue 10:30am ‐ 1:20pm)
4
ISOM3260 Lab (Stage 1) 2
Agenda of Laboratory Sessions
• Hands‐on practice on the previous lab 
materials
• Demonstration of new materials
• Hands‐on Practice
• Project work
Makeup tutorial sessions may be arranged 
over the semester
5
Course Website
• http://teaching.ust.hk/~isom3260
• Requires ITSC account and password to login
• Lab materials and other supplementary 
materials will be put on the website
– Let me know if you cannot log in
6
ISOM3260 Lab (Stage 1) 3
Objectives of Laboratory Sessions
• Analyze, design and develop an application to 
solve authentic business problems
• Learn to write 2 programming languages ‐
PL/SQL and SQL
• Understand the use of different components 
of a System Development tool – Oracle 
Developer Suite
7
Topics in Lab Sessions
Lab Sessions
Analysis, Design
Toad Data 
Modeler
Implementation, 
Maintenance
Oracle Forms 
Developer
SQL Tools
Oracle Reports 
Developer and 
integration
8
ISOM3260 Lab (Stage 1) 4
Topics in Lab Sessions
Week Topics
Week 2 - 3 Toad Data Modeler –
Design the data structure using ERD
Week 3 - 5 Oracle Forms Developer (Stage 1) –
Develop simple interfaces of an information system
using PL/SQL
Week 6 No Lab - Progress Demonstration 1 (7%)
Week 7- 9 Oracle Forms Developer (Stage 2) –
Develop advanced interfaces of an information
system using PL/SQL
Week 10 No Lab - Progress Demonstration 2 (8%)
Week 11 Oracle Reports Developer and integration –
Develop managerial reports for an information system
Week 12 Project Consultation
Week 13 Project Demonstration
9
Software in ISOM3260
• 2 Servers: Oracle Database 11g (Release 2)
– Microsoft Windows Server Platform
• Client: 
– Toad Data Modeler Freeware
• Design database through entity‐relationship diagram
– Oracle Developer Suite 10g (10.1.2)
• Forms Developer – build user interfaces for users to manipulate the data stored in 
a database 
• Reports Developer – generate managerial reports 
– SQL Tools
• Allow developers (i.e., you) to access a database using SQL commands
• Client software are available at PC Lab 1 and 2 
(LSKG005 and LSKG021)
10
ISOM3260 Lab (Stage 1) 5
Two‐tier Architecture
Toad Data Modeler,
Oracle Developer Suite and
SQL Tools are installed here!!
Oracle Databaseis
installed here!!
There are databases under 2 servers – IMZ350.ust.hk and
IMZ335.ust.hk 11
Team Project
• To develop an information system for selling 
off‐the‐shelf software packages
• 6 members per group ‐ MUST be in the same 
LAB session
12
ISOM3260 Lab (Stage 1) 6
Learning Outcomes of the Team 
Project
• Develop an authentic information system
– Simulating the work of an actual IT project team in an IT 
consultancy firm (eg. Oracle, IBM, etc)
• Learn to apply programming skills in business contexts
– IF statements, Loops, Functions and Procedures
• Learn to collaborate with others in a team
• Realize your strength in different aspects in a typical IT 
project for future career planning
– Analysis and design?
– Programming? 
– Documentation?
– Graphic design?
– Take leading role?
13
Project Grading (I)
Deliverables Date Marks
Progress Demonstration 1  Mar 13, 14 7%
Progress Demonstration 2  Apr 10, 11, 15 8%
Final Presentation
Final Report
May 7, 8 ,9 15%
Total Score 30%
14
ISOM3260 Lab (Stage 1) 7
Project Grading (II)
• Peer Evaluation
– Individual score of the team project will be 
adjusted, base on the contribution in the team
15
16
ISOM3260 Lab (Stage 1) 8
Kick‐off the project
• Form a cohesive team
• Elect a “Project Leader”
• Send the group list to imchris@ust.hk
by Feb 18
• Your group list should contain
– Names and student IDs of group members
– Lab session number
– Email addresses
17
Tips
• Form the groups by this week/next week
• Keep up with the lab topics and work accordingly on your 
project and work together during the lab sessions
• Plan ahead for the Progress Demonstrations 1, 2
• Complete the project early and perform detailed testing 
18
ISOM3260 Lab (Stage 1) 9
ISOM3260 
Database Design and Administration
Lab 2: Toad Data Modeler
1
Topics in Lab Sessions
Oracle Project
Analysis, Design
Toad Data 
Modeler
Implementation, 
Maintenance
Oracle Forms 
Developer
SQL Tools
Oracle Reports 
Developer and 
integration
2
ISOM3260 Lab (Stage 1) 10
Agenda
Oracle Project
Analysis, Design
Toad Data 
Modeler
Implementation, 
Maintenance
3
Agenda
• Introduction to Entity‐relationship diagram
• Draw ERD using a CASE Tool – Toad Data 
Modeler
 Entities
 Relationship
 Attributes, Datatype
• Create a physical database from an ERD
• Check the accuracy of the physical database
4
ISOM3260 Lab (Stage 1) 11
Introduction to 
Entity‐relationship Diagram
5
Partial View of an Online Purchasing System
6
Search products and
view detail
Register as a member
ISOM3260 Lab (Stage 1) 12
Entity: Customer
7
Customer
Attributes/information the
system stores for a
customer
CUS_ID
CUS_LName
CUS_FName
CUS_UID
CUS_PWD
CUS_Email
Attributes
A customer record
8
ylx008
******
******
ylx@ust.hk
Peter
Johnson
CUS_ID CUS_LName CUS_FName CUS_UID CUS_PWD CUS_Email
C0001 Johnson Peter ylx008 ****** ylx@ust.hk
C0002 Alex Ng ang098 ****** ang@ust.hk
…… …… …… …… …… ……
A customer record in the
customer table
ISOM3260 Lab (Stage 1) 13
Entity: Product
9
Product
PRO_ID
PRO_Name
PRO_SKU
PRO_Price
PRO_ID PRO_Name PRO_SKU PRO_Price
PD0001 Apple iPhone 5 00063 $199
PD0002 Apple iPad 2 00062 $499
…… …… …… ……
A product record/instance
Attributes
Relationship
10
• What does relationship mean in an ERD?
DOCTOR
APPOINTMENT
PATIENT
ISOM3260 Lab (Stage 1) 14
Toad Data Modeler is a CASE Tool
• CASE = Computer‐Aided Software Engineering
– Transform from logical design to physical tables
– Entity Relationship Diagram  Oracle DB 
– Other CASE tools in the market
• MS Visio, IBM Rational Rose, Oracle Designer, etc
11
Steps in creating a database using 
Toad Data Modeler
1. 
Draw ERD
2. 
Check the 
ER Model
3.
Toad Data 
Modeler 
Conversion
4. 
Create real 
tables in 
the 
Database
5.
Check the 
real tables
12
ISOM3260 Lab (Stage 1) 15
Class Exercise
• Create a ER Model using Toad Data Modeler 
for Spirit Cruise Line
13
Caution 1: Entity naming
• Do NOT use Oracle reserved word for entity 
name
• Use BLOCK letters 
• A common Oracle reserved word that 
students use : ORDER
– Use ORDERS/ORDER_DATA instead
14
ISOM3260 Lab (Stage 1) 16
Caution 2: Define attribute datatype
• VARCHAR2 (Size)
– Variable Length characters (recommended)
• NUMBER (Precision, Scale)
– Real Numbers, for calculation
• DATE
– Date 
(From January 1, 4712BC to December 31, 31999AD)
15
Steps in creating a database using 
Toad Data Modeler
1. 
Draw ERD
2. 
Check the 
ER Model
3.
Toad Data 
Modeler 
Conversion
4. 
Create real 
tables in 
the 
Database
5.
Check the 
real tables
16
ISOM3260 Lab (Stage 1) 17
Class Exercise
1. Convert the ER Model into a set of code
– Refer Lab 2 lab manual
2. Execute the code into Database using    
SQLTools
17
Verify the tables in the database (1)
• Use SQLTools 1.5 
• Login with Oracle personal account
18
ISOM3260 Lab (Stage 1) 18
Verify the tables in the database (2)
Tables created
through Toad
Data Modeler
19
Verify the tables in the database (3)
• Type the following SQL statements :
Check tables in your database
SELECT table_name
FROM user_tables; 
Check the metadata of your tables
SELECT column_name, data_type, data_length
FROM user_tab_columns
WHERE table_name=‘<table name>’;
Check the constraints of your tables
SELECT constraint_name, constraint_type,
search_condition
FROM user_constraints
WHERE table_name=‘<table name>’; 20
ISOM3260 Lab (Stage 1) 19
Summary
21
What is an entity‐relationship diagram?
22
• Entities are converted into real tables for data storage
DOCTOR
APPOINTMENT
PATIENT
ISOM3260 Lab (Stage 1) 20
Steps of creating a database
1. 
Draw ERD
2. 
Check the 
ER Model
3.
Toad Data 
Modeler 
Conversion
4. 
Create real 
tables in 
the 
Database
5.
Check the 
real tables
23
Draw ERD and convert ERD into real tables
using Toad Data Modeler
24
ISOM3260 Lab (Stage 1) 21
Check the physical tables using SQL Tools
25
Start the team project this week
1. Form your team
2. Refer to the list of basic functions, come up the 
data required to build this information system
3. Drafting an ERD on a piece of paper (or on 
Toad), base on the basic functions
4. (Optional) Pick a set of extra functions that you 
want to implement
5. (Optional) Modify the ERD base on the 
additional functions you suggest
Note:
• EVERY group should report the current progress to me next 
week
26
ISOM3260 Lab (Stage 1) 22
ISOM 3260 (Spring 2014) Lab 2     Page 1 of 9 
Lab 2 : Creating a database using Toad Data Modeler 
 
 
1. Introduction 
Toad Data Modeler is an application for designing databases. ER diagrams can be created visually in 
Toad Data Modeler. The program then automatically generates Data Definition Language for 
creating a database. The freeware version of the program, Toad Data Modeler 2.25, can be 
downloaded in http://en.utilidades‐utiles.com/download‐toad‐data‐modeler‐windows‐xp.php . 
 
 
2. Getting started with Toad Data Modeler 
This is the entry screen for Toad Data Modeler.
 
ISOM3260 Lab (Stage 1) 23
ISOM 3260 (Spring 2014) Lab 2     Page 2 of 9 
Step 1. Create a New Model 
 
To get started, a new model should be 
created first. Select File from menu and 
then New Model. 
 
 
   
Step 2: Select the target database 
 
Select Oracle 10g as the target database 
then press OK to continue. 
Every  database  has  slightly  different  data 
definition  language.  This  will  create  the 
statements specific to Oracle 10g. 
 
 
 
 
 
 
Step 3. Prepare to construct ER on the 
drawing area  
 
A drawing area appears for creating ER 
Diagrams. 
 
To construct an ERD, use the (1) Entity, (2) 
Non‐identifying relationship and (3) M:N 
relationship buttons. 
 
Refer to Appendix 1 about “non‐
identifying” relationship 
 
 
 
 
 
 
ISOM3260 Lab (Stage 1) 24
ISOM 3260 (Spring 2014) Lab 2     Page 3 of 9 
 
 
Step 4. Set display mode 
 
Go to the display mode drop down box 
and select the display mode as “Entities 
only” 
 
 
 
 
 
Step 5. Construct Entities 
Click on the entity button and then click on 
the drawing area to create an entity. 
 
 
Step 6. Rename the entity 
 
Double click the entity and rename the 
Entity Name. 
 
 
 
 
 
Step 7. Add attributes into the entity 
 
Define the attribute name and press 
“Add”. 
 
 
 
 
ISOM3260 Lab (Stage 1) 25
ISOM 3260 (Spring 2014) Lab 2     Page 4 of 9 
Double click the attribute and modify the 
datatype.   
Refer to the table 1 for the appropriate 
datatypes. 
 
 
 
 
 
 
 
 
Table 1. Data format and the corresponding datatypes 
Data Format  Datatype 
Character (eg. Chris Tse; HKUST, etc) VARCHAR2
Numberic (eg. 2000; 10623.48, etc)  NUMBER 
Date (eg. 28 Nov 1987,  10 Oct 2001)  DATE 
 
Step 8. Define the Unique 
Identifier 
 
Double click “Key” to define 
Unique Identifier. 
 
   
ISOM3260 Lab (Stage 1) 26
ISOM 3260 (Spring 2014) Lab 2     Page 5 of 9 
 
Step 9. Add and configure 
relationship 
 
Select “Non‐identifying 
relationship” and then join entities 
together. 
 
A country may build many cruises. 
Link the relationship from Country 
and then drag to Cruise 
 
 
 
 
Set the minimum cardinality of the 
relationship. Minimum cardinality 
is the minimum number of 
instances of one entity that maybe 
associated with each instance of 
another entity. 
 
 
 
 
 
 
 
A cruise must be built by at least 
one country. This is considered as 
Mandatory. 
 
On the other hand, a country may 
or may not build a cruise. This is 
considered as Optional 
 
 
 
 A crow’s feet preview is shown at 
the top. 
 
 
 
 
 
 
 
 
 
 
  
ISOM3260 Lab (Stage 1) 27
ISOM 3260 (Spring 2014) Lab 2     Page 6 of 9 
Step 10. Save the model 
 
Upon drawing the ER Diagram, 
save the model. 
 
   
 
 
 
ISOM3260 Lab (Stage 1) 28
ISOM 3260 (Spring 2014) Lab 2     Page 7 of 9 
Step 11. Generate DDL for Physical Database creation 
 
Select Generate script under Model. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Select Tables, Primary Keys and Referential Integrity and 
choose Generate  
 
 
 
 
 
 
 
 
 
 
ISOM3260 Lab (Stage 1) 29
ISOM 3260 (Spring 2014) Lab 2     Page 8 of 9 
The DDL code for creating physical database is 
generated,  click view and check out the DDL codes.  
 
   
ISOM3260 Lab (Stage 1) 30
ISOM 3260 (Spring 2014) Lab 2     Page 9 of 9 
Appendix 1: Identifying and Non‐identifying relationships 
In our lab demonstration, we use non‐identifying relationship, instead of the identifying relationship. 
The following table shows the difference between them 
Relationship 
Type 
Usage 
Identifying relationship  Being used when the child entity is a weak entity  
(unable to uniquely identify every single record without 
the parent entity) 
Non‐identifying relationship  Being used when the child entity is a strong entity  
(able to uniquely identify every single record without the 
parent entity) 
 
In our class example, the child entities are strong entities, since the records of child entity can be 
identified uniquely using the unique identifier, they are Cruise_no and Staff_no respectively.  
As every single record of the child entities (Cruise and Staff) can be identified without the parent entity 
(Country), we should use non‐identifying relationship for the linkage with Country. 
ISOM3260 Lab (Stage 1) 31
Checklist for Logical Model in Toad Data Modeler 
Use this checklist to self‐assess the ER Model of your project 
Entity :  ________________________________ 
Checked by :  ___________________________________ 
Items to check  C  NC
Entities and Attributes 
1. The entity name is correctly named 
 
   
2. The attributes names are appropriately named with the short name prefix  
STUDENT  STU_ID, STU_ADDRESS..etc 
 
   
3. The sequence of attributes is defined properly such that identifier (PK) goes 
first 
 
   
4. The format of the attributes are correctly set appropriately 
 
Text  VARCHAR2, not CHAR 
Number (for calculations)  NUMBER 
Date DATE 
 
   
5. The maximum length of each attribute is defined logically  
 
You should be able to explain the rationale of setting the maximum number 
of each attribute 
 
   
6. The column “Dec” ‐ “Decimal” ‐ is used for numeric attributes only 
 
NUMBER(6,2)  6 digits with 2 decimal places  Max = $9999.99 
NUMBER(4,1)  4 digits with 1 decimal places  Max = $999.9 
 
   
7. The primary key/unique identifier of the entity is set appropriately  
 
   
Relationship 
8. Read the business rules from the ERD again, they are interpreted  the same 
the draft 
   
 
C = Compliance ; NC = Non‐compliance  
ISOM3260 Lab (Stage 1) 32
Checklist for Logical Model in Toad Data Modeler 
Use this checklist to self‐assess the ER Model of your project 
Entity :  ________________________________ 
Checked by :  ___________________________________ 
Items to check  C  NC
Entities and Attributes 
1. The entity name is correctly named 
 
   
2. The attributes names are appropriately named with the short name prefix  
STUDENT  STU_ID, STU_ADDRESS..etc 
 
   
3. The sequence of attributes is defined properly such that identifier (PK) goes 
first 
 
   
4. The format of the attributes are correctly set appropriately 
 
Text  VARCHAR2, not CHAR 
Number (for calculations)  NUMBER 
Date DATE 
 
   
5. The maximum length of each attribute is defined logically  
 
You should be able to explain the rationale of setting the maximum number 
of each attribute 
 
   
6. The column “Dec” ‐ “Decimal” ‐ is used for numeric attributes only 
 
NUMBER(6,2)  6 digits with 2 decimal places  Max = $9999.99 
NUMBER(4,1)  4 digits with 1 decimal places  Max = $999.9 
 
   
7. The primary key/unique identifier of the entity is set appropriately  
 
   
Relationship 
8. Read the business rules from the ERD again, they are interpreted  the same 
the draft 
   
 
C = Compliance ; NC = Non‐compliance  
   
ISOM3260 Lab (Stage 1) 33
Checklist for Logical Model in Toad Data Modeler 
Use this checklist to self‐assess the ER Model of your project 
Entity :  ________________________________ 
Checked by :  ___________________________________ 
Items to check  C  NC
Entities and Attributes 
1. The entity name is correctly named 
 
   
2. The attributes names are appropriately named with the short name prefix  
STUDENT  STU_ID, STU_ADDRESS..etc 
 
   
3. The sequence of attributes is defined properly such that identifier (PK) goes 
first 
 
   
4. The format of the attributes are correctly set appropriately 
 
Text  VARCHAR2, not CHAR 
Number (for calculations)  NUMBER 
Date DATE 
 
   
5. The maximum length of each attribute is defined logically  
 
You should be able to explain the rationale of setting the maximum number 
of each attribute 
 
   
6. The column “Dec” ‐ “Decimal” ‐ is used for numeric attributes only 
 
NUMBER(6,2)  6 digits with 2 decimal places  Max = $9999.99 
NUMBER(4,1)  4 digits with 1 decimal places  Max = $999.9 
 
   
7. The primary key/unique identifier of the entity is set appropriately  
 
   
Relationship 
8. Read the business rules from the ERD again, they are interpreted  the same 
the draft 
   
 
C = Compliance ; NC = Non‐compliance  
   
ISOM3260 Lab (Stage 1) 34
Checklist for Logical Model in Toad Data Modeler 
Use this checklist to self‐assess the ER Model of your project 
Entity :  ________________________________ 
Checked by :  ___________________________________ 
Items to check  C  NC
Entities and Attributes 
1. The entity name is correctly named 
 
   
2. The attributes names are appropriately named with the short name prefix  
STUDENT  STU_ID, STU_ADDRESS..etc 
 
   
3. The sequence of attributes is defined properly such that identifier (PK) goes 
first 
 
   
4. The format of the attributes are correctly set appropriately 
 
Text  VARCHAR2, not CHAR 
Number (for calculations)  NUMBER 
Date DATE 
 
   
5. The maximum length of each attribute is defined logically  
 
You should be able to explain the rationale of setting the maximum number 
of each attribute 
 
   
6. The column “Dec” ‐ “Decimal” ‐ is used for numeric attributes only 
 
NUMBER(6,2)  6 digits with 2 decimal places  Max = $9999.99 
NUMBER(4,1)  4 digits with 1 decimal places  Max = $999.9 
 
   
7. The primary key/unique identifier of the entity is set appropriately  
 
   
Relationship 
8. Read the business rules from the ERD again, they are interpreted  the same 
the draft 
   
 
C = Compliance ; NC = Non‐compliance  
 
ISOM3260 Lab (Stage 1) 35
2. Checklist for Physical Tables in SQLTools 
Use this checklist to self‐assess the physical tables of your project 
Items to check  C  NC
Tables 
1. The tables are created in the database, and they are consistent with your 
physical design 
 
Execute  
SELECT table_name  
FROM user_tables; 
 
   
2. The metadata of every attribute in the table are consistent with your 
physical design 
 
Execute  
SELECT column_name, data_type, data_length 
FROM user_tab_columns 
WHERE table_name=‘STUDENT’; 
 
   
3. The constraints of every table are consistent with your physical design 
 
Execute 
SELECT constraint_name, constraint_type, 
search_condition  
FROM user_constraints  
WHERE table_name=‘STUDENT’; 
 
   
 
 
ISOM3260 Lab (Stage 1) 36
3/1/13 Exploring Database Design Tips - For Dummies
www.dummies.com/how-to/content/exploring-database-design-tips.html 1/3
Advertisement
Agoda's Best Hotel Offers Save up to 75% Instant confirmation Book now! Agoda.com/Hotels
CEF Approved Courses Excel and VBA for business modeling Create and manage Access databases www.welkin.com.hk
Free Hyper-V Backup Easy to use Hyper-V backup software Free for 2 VMs, forever. No catch. www.altaro.com/free-hyper-v-backup/
Visitor Management System Guess Pre-Registration for Event, Online Counter Register & Reports. www.rentech.asia
Exploring Database Design Tips
By Doug Lowe from ASP.NET 2.0 Everyday Apps For Dummies
One of the most important aspects of any application-development project is the database design. And so, without further ado,
here are some tips for designing good databases.
Use the right number of tables
In Amadeus, the Emperor of Germany criticizes one of Mozart's works as having "too many notes." Mozart replies indignantly that
he uses neither too many nor too few notes, but the exact number of notes that the composition requires.
So it should be with database design. Your database should have as many tables as the application requires — not more, not
fewer. There is no single "right" number of tables for all databases.
Inexperienced database designers have a tendency to use too few tables — sometimes trying to cram an entire database-worth
of information into a single table. At the other extreme are databases with dozens of tables, each consisting of just a few fields.
Avoid repeating data
One of the core principles of relational database design is to handle repeating data by breaking it out into a separate table. For
example, in the old days of flat-file processing, it was common to create invoice records that had room for a certain number of
line items. Thus the invoice record would have fields with names like Item1, Item2, Item3, and so on.
Bad!
Whenever you find yourself numbering field names like that, you should create a separate table. In the case of the invoice record,
you should create a separate table to store the line item data.
Avoid redundant data
When designing the tables that make up your database, try to avoid creating redundant data. Whenever redundant data creeps
into a database, it introduces the likelihood that the data will become corrupt. For example, suppose you store a customer's
name in two different tables. Then, if you update the name in one of the tables but not the other, the database has become
inconsistent.
The most obvious type of redundant-data mistake is to create a field that exists in two or more tables. But there are more subtle
types of redundant data. For example, consider an Invoice table that contains a LineItemTotal field that represents the sum of
the Total fields in each of the invoice's line items. Technically, this field represents redundant data; the data is also stored in the
Total fields of each line item.
Whether you should allow this type of redundancy depends on the application. In many cases, it's better to put up with the
redundancy for the convenience and efficiency of not having to recalculate the total each time the data is accessed. But it's
always worth considering whether the added convenience is worth the risk of corrupting the data.
Use a naming convention
To avoid confusion, pick a naming convention for your database objects and stick to it. That way your database tables, columns,
constraints, and other objects will be named in a consistent and predictable way. (Just think of the savings on aspirin.)
You can argue from now until St. Swithen's day about what the naming conventions should be. That doesn't matter so much. What
does matter is that you make a convention — and follow it.
Avoid nulls
Allowing nulls in your database tables significantly complicates the application programming required to access the tables. As a
result, avoid nulls by specifying NOT NULL whenever you can. Use nulls rarely, and only when you truly need them.
ISOM3260 Lab (Stage 1) 37
3/1/13 Exploring Database Design Tips - For Dummies
www.dummies.com/how-to/content/exploring-database-design-tips.html 2/3
Dummies Recommends
Knowing Just Enough about Relational
Databases
The Long and the Short of Coat Styles
for Your Yorkshire Terrier
How to Design a Relational Database in
Access 2010
Secrets of Access 2010 Database
Design
Getting a Look At Web Services
From Around the Web
Free tool by Microsoft helps identify and
zap malware (TechNet)
6 Things You Don't Know About Content
Marketing (King Content)
Kaazing Publishes First Definitive
Guide to HTML5 WebSocket (dlvr.it)
Making Your Home Less Cluttered (Live
Smarter)
The Gmail Add-On You Must Have
(Inc.com)
Nulls are often misused anyway. The correct use of null is for a value that is unknown; not for a blank or empty value. For example,
consider a typical address record that allows two address lines, named Address1 and Address2. Most addresses have only one
address, so the second address line is blank. The value of this second address line is, in fact, known — it's blank. That's not the
same thing as null. Null would imply that the address may have a second address line; we just don't know what it is.
Even for columns that might seem appropriate for nulls, it's usually more convenient to just leave the column value blank for values
that aren't known. For example, consider a phone number column in a Customer table. It's safe to assume that all your
customers have phone numbers, so it would be correct to use null for phone numbers that you don't know. However, from a
practical point of view, it's just as easy to disallow nulls for the phone number column, and leave the unknown phone numbers
blank.
Avoid secret codes
Avoid fields with names like CustomerType, where the value of the field is one of several constants that aren't defined elsewhere
in the database, such as R for Retail or W for Wholesale. You may have only these two types of customers today, but the needs
of the application may change in the future, requiring a third customer type.
An alternative would be to create a separate table of customer-type codes (call it CustomerTypes), and then create a foreign-key
constraint so the value of the CustomerType column must appear in the CustomerTypes table.
Use constraints wisely
Constraints let you prevent changes to the database that violate the internal consistency of your data. For example, a check
constraint lets you validate only data that meets certain criteria. For example, you can use a check constraint to make sure the
value of a field named Price is greater than zero.
A foreign-key constraint requires that the value of a column in one table must match the value that exists in some other table. For
example, if you have a LineItems table with a column named ProductID, and a Products table with a column also named
ProductID, you could use a foreign-key constraint to make sure that the ProductID value for each row in the LineItems table
matches an existing row in the Products table.
Use triggers when appropriate
A trigger is a procedure that kicks in when certain database data is updated or accessed. Triggers are a great way to enforce
those database rules that are more complicated than simple constraints. For example, suppose an Invoice table contains an
ItemCount column whose value is the number of line items for the invoice. One way to maintain the value of this column
automatically would be to create triggers that increment the ItemCount column whenever a line item is inserted, and decrement
the ItemCount column whenever a line item is deleted. Sometimes automation is a beautiful thing.
Use stored procedures
Stored procedures are SQL procedures that are tucked away in the database and are part of it. There are several advantages to
using stored procedures instead of coding SQL in your applications:
Using stored procedures removes the burden of SQL programming from your application programmers. Instead, it makes
the SQL used to access the database a part of the database itself — no fuss, no muss. All the application programs have to
do is call the appropriate stored procedures to select, insert, update, or delete database data.
Stored procedures are more efficient as a way of handling transactions, because the database server handles the entire
transaction.
Stored procedures are also more efficient because they reduce the amount of network traffic between the database server
and the Web server.
Finally, stored procedures are more secure because they reduce the risk of SQL injection attacks.
ISOM3260 Lab (Stage 1) 38
3/1/13 Exploring Database Design Tips - For Dummies
www.dummies.com/how-to/content/exploring-database-design-tips.html 3/3
How To Take Great Photos With Your
DSLR Camera (Inkling)
Recommended by
Copyright © 2013 & Trademark by John Wiley & Sons, Inc. All rights reserved.
ISOM3260 Lab (Stage 1) 39
 
ISOM3260 Spring 2014 Lab 2 Class Practice      Page 1 of 1 
 
Class Exercise: 
(1) Use Toad Data Modeler to create a ER diagram of a database extract for Spirit Cruise Line. 
This extract consists of three tables and two non‐identifying relationships. 
 
Table: CRUISE 
Attribute Name  Datatype 
*CRUISE_NO  VARCHAR2 
CRUISE_NAME  VARCHAR2 
YEAR_BUILT  VARCHAR2 
DISPLACEMENT  NUMBER 
SPEED  NUMBER 
ROOM  NUMBER 
PASSENGER  NUMBER 
 
Table: COUNTRY 
Attribute Name  Datatype 
*COUNTRY_CODE  VARCHAR2 
COUNTRY_NAME  VARCHAR2 
 
Table: STAFF 
Attribute Name  Datatype 
*STAFF_NO   VARCHAR2 
LAST_NAME  VARCHAR2 
FIRST_NAME  VARCHAR2 
SEX  VARCHAR2 
ADDRESS  VARCHAR2 
DOB  DATE 
D_ENTRY  DATE 
SALARY  NUMBER 
 
Note:  
The attributes with asterisk (*) are unique identifiers.  
All the entities here are strong entities, hence “Non‐identifying Relationship” is used 
Business Rules: 
(1) Each staff is from one country only, and there is more than one staff from the same 
country. 
(2) Each ship is built in one country only, and there is more than one ship being built in 
the same country. 
 
ISOM3260 Lab (Stage 1) 40
ISOM3260 (Spring 2013) Supplementary Notes 1  Page 1 of 1 
 
Supplementary Notes 1:  Reserved Words in Oracle Database 11g 
The following words are reserved by Oracle. That is, they have a special meaning to Oracle and 
so cannot be redefined. For this reason, you cannot use them to name database objects such 
as columns, tables, or indexes. (extracts from Oracle® Database Programmer's Guide to the 
Oracle Precompilers 11g Release 2) 
ACCESS  ELSE  MODIFY  START 
ADD  EXCLUSIVE  NOAUDIT  SELECT 
ALL  EXISTS  NOCOMPRESS  SESSION 
ALTER  FILE  NOT  SET 
AND  FLOAT  NOTFOUND  SHARE 
ANY  FOR  NOWAIT  SIZE 
ARRAYLEN  FROM  NULL  SMALLINT 
AS  GRANT  NUMBER  SQLBUF 
ASC  GROUP  OF SUCCESSFUL 
AUDIT  HAVING  OFFLINE  SYNONYM 
BETWEEN  IDENTIFIED ON SYSDATE 
BY  IMMEDIATE  ONLINE  TABLE 
CHAR  IN  OPTION THEN 
CHECK  INCREMENT  OR  TO 
CLUSTER  INDEX  ORDER  TRIGGER 
COLUMN  INITIAL  PCTFREE  UID 
COMMENT  INSERT  PRIOR UNION 
COMPRESS  INTEGER  PRIVILEGES  UNIQUE 
CONNECT  INTERSECT  PUBLIC  UPDATE 
CREATE  INTO  RAW  USER 
CURRENT  IS  RENAME  VALIDATE 
DATE  LEVEL  RESOURCE  VALUES 
DECIMAL  LIKE  REVOKE VARCHAR 
DEFAULT  LOCK  ROW  VARCHAR2 
DELETE  LONG  ROWID VIEW 
DESC  MAXEXTENTS  ROWLABEL  WHENEVER 
DISTINCT  MINUS  ROWNUM WHERE 
DROP  MODE  ROWS  WITH 
 
ISOM3260 Lab (Stage 1) 41
ISOM3260 
Database Design and Administration
Lab 3: Oracle Forms Developer I
A real example of “Line Item”
ORDER_INFO
Each order (sales memo) contains
the description such as…
SHOP_ID, Date, Staff, Memo_ID, 
Order Total and Credit card number
Each order (sales memo) must have
at least 1, to multiple “PURCHASE ITEM”
to be stored in a separate entity
ISOM3260 Lab (Stage 1) 42
ORDER_INFO
Memo_
ID
Date Cashier … Order_
Total
Credit Card
CP8‐01‐
018965 
(1)
17/2/2013
13:26:14
09913 … 2976 XXXXXXX2003
… … … … … …
CP8‐01‐
018981 
(1)
18/2/2013
09:10:12
09176 … 576 XXXXXXXX0011
… … … … … …
ORDER_DETAIL
Detail_
ID
Memo
_ID
Line Pdt_ID List_
Price
Qty Subtotal
00401 CP8‐01‐
018965 
(1)
1 LBR410 1899 1 1350
00402 CP8‐01‐
018965 
(1)
2 BUX410 1599 1 1120
00403 CP8‐01‐
018965 
(1)
3 CHX390 1499 1 1050
… … … … … … …
00468 CP8‐01‐
018981 
(1)
1 ABC111 600 1 576
Each Order  __________(must/may) have 
one to many details
ISOM3260 Lab (Stage 1) 43
Agenda
Oracle Project
Analysis, Design
Implementation, 
Maintenance
Oracle Forms 
Developer
SQL Tools
Oracle Reports 
Developer
Oracle 
Application 
Integration
Learning objectives:
• Understand the 3 components in Forms 
Developer
– Data Block, Canvas, Module
• Build 2 simple pages in Oracle Forms 
• Understand a major use of “Trigger”
• Practice the procedures of writing GO_BLOCK 
triggers, compile the program and perform 
runtime
ISOM3260 Lab (Stage 1) 44
Oracle Forms Developer
– Develop front‐end applications in Graphical User 
Interface (GUI)
– Insert/delete/edit/view records in the database, 
without any knowledge of database design and 
SQL statements
– Programming Language: PL/SQL
Components in Forms Developer
• Data Block
– A set of “objects” on a page (Textboxes, Buttons, pull 
down menu, etc)
• Canvas
– A “page” 
– A normal canvas has at least one, or more than one 
datablock
• Module
– A whole system
ISOM3260 Lab (Stage 1) 45
Components in Forms Developer
Datablocks
Object Navigator shows all components
of a “module”
Canvases
Class Exercise
• In this lab, we are going to build simple pages 
in Oracle Forms
Datablock: WELCOME
Canvas: WELCOME_C
Datablock: CUST_LOGIN
Canvas: CUST_LOGIN_C
ISOM3260 Lab (Stage 1) 46
Prerequisite Settings (1) 
• In order to loose the Oracle Forms Developer’s 
default control, change the validation unit to 
“Form”
• Do this prerequisite setting to your Project File
Prerequisite Settings (2) 
MUST SET !!!
Change the 
Validation Unit 
into “Form”
ISOM3260 Lab (Stage 1) 47
Steps to create a page in Oracle Forms
Step 1: Create a new canvas 
Select “Canvases” and 
click “Create”
Steps to create a page in Oracle Forms
Step 2: Rename the canvas
To be systematic, rename the 
canvas using this format:
<canvas name> _C
eg. WELCOME_C , LOGIN_C, etc.
ISOM3260 Lab (Stage 1) 48
Steps to create a page in Oracle Forms
Step 3: Create a new data block
a. Select “Datablocks” 
and click “Create”
b. In the pop‐up 
windows, choose 
“Build a new data 
block manually” and 
click OK
Steps to create a page in Oracle Forms
Step 4: Rename a new data block
ISOM3260 Lab (Stage 1) 49
Steps to create a page in Oracle Forms
Step 5: Open Layout Editor
a. Right click the 
datablock, and choose 
“Layout Editor”
b. “Layout Editor” is 
shown for creating a 
page
Steps to create a page in Oracle Forms
Step 6: Select the correct datablock and start adding 
“Objects” – Button, Text, Checkboxes, Radio groups, etc.
ISOM3260 Lab (Stage 1) 50
Trigger
• A series of actions written in PL/SQL
• Usually written in a button
• Event‐driven, execute when a certain action 
takes place:
Most common: WHEN‐BUTTON‐PRESSED
Switching among canvases
• When user clicks “Customer” button, the login 
page is shown…
• GO_BLOCK (‘Datablock Name’);
– Not Canvas Name
GO_BLOCK(‘CUST_LOGIN’);
GO_BLOCK(‘WELCOME’);
ISOM3260 Lab (Stage 1) 51
Write a PL/SQL trigger in the push 
button (1)
• Write PL/SQL 
trigger in 
“PL/SQL 
Editor”
Write a PL/SQL trigger in the push 
button (2)
• Select a trigger 
event –
WHEN‐BUTTON‐
PRESSED
ISOM3260 Lab (Stage 1) 52
Write a PL/SQL trigger in the push 
button (3)
• Write a PL/SQL trigger in the PL/SQL Editor
Write a PL/SQL trigger in the push 
button (4)
• Press “Compile PL/SQL Code” to compile
ISOM3260 Lab (Stage 1) 53
Write a PL/SQL trigger in the push 
button (5)
• Start OC4J Instance
Write a PL/SQL trigger in the push 
button (6)
• Press “Run Form” to load the Forms
ISOM3260 Lab (Stage 1) 54
Summary:
• Understand the 3 components in Forms 
Developer
– Data Block, Canvas, Module
• Build 2 simple pages in Oracle Forms 
• Understand a major use of “Trigger”
• Practice the procedures of writing GO_BLOCK 
triggers, compile the program and perform 
runtime
ISOM3260 Lab (Stage 1) 55
ISOM3260 
Database Design and Administration
Lab 4: Oracle Forms Developer II –
insert records into database
1
Agenda
Oracle Project
Analysis, Design
Implementation, 
Maintenance
Oracle Forms 
Developer
SQL Tools
Oracle Reports 
Developer and 
integration
2
ISOM3260 Lab (Stage 1) 56
Agenda
• Location of objects 
• Build a page to insert student information
• Project Work
3
Understand the Components in Oracle 
Forms
• Open Lab4.fmb in Oracle Forms Developer 
• Object Navigator
4
ISOM3260 Lab (Stage 1) 57
Recap:
Components in Forms Developer
• Data Block
– A set of “objects” on a page (Textboxes, Buttons, pull 
down menu, etc)
• Canvas
– A “page” 
– A normal canvas has at least one, or more than one 
datablock
• Module
– A whole system
5
1 Module: LAB4
1 Datablock
- STUDENT_INSERT
1 Canvas
- STUDENT_INSERT_C
Take a look at “STUDENT_INSERT_C” by
choosing “Layout Editor”
6
ISOM3260 Lab (Stage 1) 58
Canvas: STUDENT_INSERTE_C
(A page in an information systems)
Datablock:
STUDENT_INSERT
(Textboxes created
base on the columns in
table “STUDENTS”)
Buttons (contains Trigger) :
BTN_INSERT
(Created under the datablock “STUDENT_INSERT)
7
Location of Objects
• The locations of different objects (eg. 
textboxes) are crucial in PL/SQL programming: 
– Capture textbox values for inserting data
– Retrieve data from database to corresponding 
textboxes
: <Datablock Name> . <Object Name>
8
ISOM3260 Lab (Stage 1) 59
• Click on individual objects (textboxes, buttons) and locate 
them
For example: The location of the textbox “STUDENT_NAME” is
:STUDENT_INSERT.STUDENT_NAME 9
Exercise on Location of Textboxes
10
ISOM3260 Lab (Stage 1) 60
Demonstration : 
Build a page to insert student 
information
11
Build a page to insert student 
information
• Close Lab4‐stu.fmb in Oracle Forms Developer 
and create a new Module 
• Build a datablock with columns base on the 
table ‐ STUDENTS 
• Build a canvas and lay out the datablock
12
ISOM3260 Lab (Stage 1) 61
Prerequisite Settings (1) 
• In order to loose the Oracle Forms Developer’s 
default control, change the validation unit to 
“Form”
• Do this prerequisite setting to your Project File
13
Prerequisite Settings (2) 
MUST SET !!!
Change the 
Validation Unit 
into “Form”
14
ISOM3260 Lab (Stage 1) 62
A customer record
15
ylx008
******
******
ylx@ust.hk
Peter
Johnson
CUS_ID CUS_LName CUS_FName CUS_UID CUS_PWD CUS_Email
C0001 Johnson Peter ylx008 ****** ylx@ust.hk
C0002 Alex Ng ang098 ****** ang@ust.hk
…… …… …… …… …… ……
After user presses “Signup”, a
customer record is created in
the customer table
Datablock Wizard (1)
• Create a datablock using Datablock Wizard
16
ISOM3260 Lab (Stage 1) 63
Datablock Wizard (2)
Create a datablock base on Table or View
17
Datablock Wizard (3)
• Click Browse and 
login to your 
Oracle account 
• Username : lab5
• Password : lab5
• Database: imz350
18
ISOM3260 Lab (Stage 1) 64
Datablock Wizard (4)
• Select the tables of 
which the datablock is 
based on
(i.e. STUDENTS)
19
Datablock Wizard (5)
• Select the columns that 
the datablock to include 
(usually pick all)
• Then, the datablock is 
going to contain 4 items, 
which based on the 4 
columns in table 
STUDENTS
20
ISOM3260 Lab (Stage 1) 65
Datablock Wizard (6)
• Modify the 
Datablock Name
• Do NOT use the 
default name
– Make it easier to 
distinguish
21
Datablock Wizard (7)
• Press Finish and 
Layout Wizard is 
going to launch
22
ISOM3260 Lab (Stage 1) 66
Layout Wizard (1)
• Select a canvas that you 
want to put the datablock 
on
23
Layout Wizard (2)
• Select all the items of 
“STUDENT_INSERT” 
datablock to display
24
ISOM3260 Lab (Stage 1) 67
Layout Wizard (3)
• You may want to 
change the 
“Prompt” and 
make them look 
more user‐friendly
(e.g. Stu_id 
Student ID)
25
Layout Wizard (4)
• There are two 
kinds of layout 
style of a 
datablock
– Form is for 
singular record
– Tabular is for 
multiple records
26
ISOM3260 Lab (Stage 1) 68
Layout Wizard (5)
• Press Finish to 
complete the Layout 
Wizard
27
Design the Canvas
 A canvas is created
 Modify the 
outlook/font size/font 
face 
28
ISOM3260 Lab (Stage 1) 69
Design the Canvas
29
Write a trigger to insert records to the 
database
• Insert a push button “Insert”
• Write a PL/SQL trigger in the push button
– When the button is pressed, the values of the 4 
textboxes will be inserted to Student table in 
database
30
ISOM3260 Lab (Stage 1) 70
Insert a push button
• Create a push button “Insert”
31
Write a PL/SQL trigger in the push 
button (1)
• Write PL/SQL 
trigger in 
“PL/SQL 
Editor”
32
ISOM3260 Lab (Stage 1) 71
Write a PL/SQL trigger in the push 
button (2)
• Select a trigger 
event –
WHEN‐BUTTON‐
PRESSED
33
Write a PL/SQL trigger in the push 
button (3)
• Write a PL/SQL trigger in the PL/SQL Editor
34
ISOM3260 Lab (Stage 1) 72
PL/SQL Code for inserting 
Student Records
BEGIN
INSERT INTO student VALUES
(:student_insert.student_id,
:student_insert.student_name,
:student_insert.email,
:student_insert.year);
35
PL/SQL Code for inserting 
Student Records
BEGIN
INSERT INTO student VALUES
(:student_insert.student_id,
:student_insert.student_name,
:student_insert.email,
:student_insert.year);
36
ISOM3260 Lab (Stage 1) 73
PL/SQL Code for inserting 
Student Records
BEGIN
INSERT INTO student VALUES
(:student_insert.student_id,
:student_insert.student_name,
:student_insert.email,
:student_insert.year);
37
PL/SQL Code for inserting 
Student Records
BEGIN
INSERT INTO student VALUES
(:student_insert.student_id,
:student_insert.student_name,
:student_insert.email,
:student_insert.year);
38
ISOM3260 Lab (Stage 1) 74
PL/SQL Code for inserting Student 
Records
message(‘The student ’ || 
:STUDENT_INSERT.Student_Name || ‘ is inserted’);
A message prompt shows The student XXX is inserted
|| means concatenation
forms_ddl('Commit');
VERY IMPORTANT!! 
Use this command to save the record permanently in the 
database!!!
End;
39
Write a PL/SQL trigger in the push 
button (4)
• Press “Compile PL/SQL Code” to compile
40
ISOM3260 Lab (Stage 1) 75
Write a PL/SQL trigger in the push 
button (5)
• Start OC4J Instance
41
Write a PL/SQL trigger in the push 
button (6)
• Press “Run Form” to load the Forms
42
ISOM3260 Lab (Stage 1) 76
Write a PL/SQL trigger in the push 
button (7)
• Input a student 
record as you 
were the system 
user
• Press Insert to 
insert the record 
into the database
43
Write a PL/SQL trigger in the push 
button (8)
• Check the results in SQL Tools
44
ISOM3260 Lab (Stage 1) 77
Generate unique ID for records
45
ylx008
******
******
ylx@ust.hk
Peter
Johnson
CUS_ID CUS_LName CUS_FName CUS_UID CUS_PWD CUS_Email
C0001 Johnson Peter ylx008 ****** ylx@ust.hk
C0002 Alex Ng ang098 ****** ang@ust.hk
…… …… …… …… …… ……
When a new record is inserted,
a new ID will be generated
sequentially.
The new ID is generated using
an IF statement.
Summary
• Identify location of textboxes
:<Datablock Name> . <Object Name>
• Create Oracle Forms user interfaces to 
insert records in the database
• Generate unique ID for records in database
46
ISOM3260 Lab (Stage 1) 78
Project Work
• Do the following coding for your project:
Member/Customer:
• Member registration (i.e. insert member information)
Staff:
• Insert Product Information
47
ISOM3260 Lab (Stage 1) 79
ISOM3260 Lab 4 – Object Location Exercise       Page 1 of 1 
 
Write down the location of the objects (Textboxes and Buttons) 
ISOM3260Lab(Stage1)80
Page 1 of 3 
 
1. Insert statements 
BEGIN 
‐‐INSERT statements 
INSERT INTO student VALUES  
(:student_insert.student_id,  
:student_insert.student_name,  
:student_insert.email,  
:student_insert.year); 
 
‐‐Display a message upon the insertion 
Message('Student ' || :student_insert.student_name || ' has been created.'); 
 
‐‐Save the new record to the table 
forms_ddl('Commit'); 
END; 
   
ISOM3260 Lab (Stage 1) 81
Page 2 of 3 
 
2. Select Statements 
BEGIN 
 
‐‐SELECT statements 
SELECT student_name, email, STUDENT.year 
INTO :student_edit.student_name, 
:student_edit.email, 
:student_edit.year 
FROM student 
WHERE student_id=:student_edit.student_id; 
 
END;   
 
   
ISOM3260 Lab (Stage 1) 82
Page 3 of 3 
 
3. Update Statements 
BEGIN 
‐‐UPDATE statements 
UPDATE student SET student_id=:student_edit.student_id, 
student_name=:student_edit.student_name,  
email=:student_edit.email, 
student.year=:student_edit.year 
WHERE student_id=:student_edit.student_id; 
‐‐Display a message upon the edition 
Message('Student '||:student_edit.student_name||' has been updated.'); 
‐‐Save the edited record to the table  
forms_ddl('Commit'); 
END; 
ISOM3260 Lab (Stage 1) 83
Lab 4: Generate Unique ID in the table 
Suppose I have a table NUMBERING with an ID NUMBER(5), and the ID should be generated 
sequentially from 1 to 99999. To generate a unique ID sequentially when I insert a new record, 
we use the following code : 
DECLARE
-- Current_Number is the variable that stores the current number of records in the table
-- New_number is the variable that stores the current number of records in the table “ + 1”
current_number number(10);
new_number number(10);
BEGIN
-- Select the counted number of records from the table, assign it into the variable
-- current_number
select max(id) into current_number from numbering;
new_number:=current_number+1;
-- INSERT statement that inserts the new_id in the numbering table, and commit
insert into numbering values (new_number);
forms_ddl('commit');
end;
ISOM3260 Lab (Stage 1) 84
ISOM3260 Spring 2014 Supplementary Note 2                                                                               Page 1 of 6 
Supplementary Note 2: DATE format in Oracle Database and Oracle Forms 
Note the SQL syntax when inserting records with DATE format into the Oracle Database using SQL. For 
example, a table –DAY is created with the following metadata: 
TABLE: DAY 
Attribute  Data Type 
ID  VARCHAR2 (3) 
DOB  DATE 
1. Insert Date into Oracle Database using SQLTools 
The syntax of inserting a record ‘001, 24/3/2010’ is  
INSERT INTO DAY VALUES (‘001’,’24-MAR-2010’);
However, an error message maybe appeared – ORA01843 Not a valid month. This is due to the locale of 
your computer. To solve this problem, execute the following statement before inserting records with 
DATE format: 
ALTER session SET nls_date_language='american';
Note that the DATE format in Oracle contains not only date, but time as well. Without specifying the 
time, the default value is 00:00:00.  
In the example above, while date is inserted as 24‐MAR‐2010, the value actually is 24‐MAR‐2010 
12:00:00am. 
ISOM3260 Lab (Stage 1) 85
ISOM3260 Spring 2014 Supplementary Note 2                                                                               Page 2 of 6 
2. Insert Date and Time into Oracle Database using SQLTools 
To insert date and time together, we use a function called “TO_DATE”.   
The syntax of inserting a record ‘002, 24/3/2010 12:01:00’ is 
INSERT INTO DAY VALUES(‘002’,TO_DATE('2010/03/24:12:01:00',
‘yyyy/mm/dd:hh24:mi:ss'));
 
ISOM3260 Lab (Stage 1) 86
ISOM3260 Spring 2014 Supplementary Note 2                                                                               Page 3 of 6 
3. Insert Current Date and Time into Oracle Database 
We can insert the current date and time into the Oracle Database, the effect is equivalent to using 
TIMESTAMP in other databases. 
‘SYSDATE’ is used for showing the current date and time of the Oracle Server. For your interest, you may 
execute the below SQL statement and see the values of the current date and time. 
SELECT sysdate FROM dual;
Note that the current time and date depends on the Oracle Server, not your computer. 
The syntax of inserting a record ‘004, <Current Time>’ is 
INSERT INTO DAY VALUES(‘004’, sysdate);
sysdate includes time (Hours, Minutes and second). Occasionally, instead of keeping current time, you 
may want to insert system date only. 
 
The syntax of inserting a record, ‘005, <Current Date>’ is 
INSERT INTO DAY VALUES(‘005’, to_date(to_char(sysdate,’DDMMYYYY’),
‘DDMMYYYY’));
ISOM3260 Lab (Stage 1) 87
ISOM3260 Spring 2014 Supplementary Note 2                                                                               Page 4 of 6 
4. Write triggers to obtain DATE value from user interface 
You should change the format of the textbox (generated from Datablock wizard) into CHAR format from 
DATE format.  
When writing a trigger to insert data into database, use “TO_DATE” function to convert users’ input 
from VARCHAR2 format into DATE format before inserting it into database. 
 
begin
insert into day values (:date.date_id,
to_date(:date.dob, ‘DD/MM/YYYY'));
forms_ddl('commit');
end;
ISOM3260 Lab (Stage 1) 88
ISOM3260 Spring 2014 Supplementary Note 2                                                                               Page 5 of 6 
5. Setting up format mask of displaying DATE format in Oracle Forms 
 
The format of displaying DATE fields in Oracle Forms depends on the locale of the computer. For 
instance, if your computer is configured with a traditional Chinese locale, then the current date will be 
“24‐三月‐2010”. However, if your computer is configured with an English locale, then the current date 
will be “24‐MAR‐2010”. 
 
In order to overcome the problems of different location settings among computers, we set up format 
mask in order to unify the display/input format. 
 
To specify the Format Mask in a DATE field, Right click and choose Property Palette. 
 
 
Set Format Mask as DD‐MM‐YYYY, so that users, no matter which locales they are using, input Date of 
Birth as ‘01‐01‐1988’, instead of ‘01‐JAN‐1988’ or ’01‐一月‐1988’. 
ISOM3260 Lab (Stage 1) 89
ISOM3260 Spring 2014 Supplementary Note 2                                                                               Page 6 of 6 
Appendix 1: Format Masks to be used in TO_DATE and TO_CHAR functions 
 
Format  Meaning 
YYYY  Year 
MM  Month 
DD  Day of month 
DDD  Day of year 
D  Day of week 
DY  Abbreviation of day, eg. MON 
Q  Quarter of year 
HH  Hour of day 
HH24  24 hours representation 
MI  Minutes 
SS  Seconds 
SSSSS  Number of seconds since mid‐night 
 
ISOM3260 Lab (Stage 1) 90
ISOM3260 Spring 2014 Supplementary Note 4                                                                                   Page 1 of 1 
Supplementary Notes 4 : Configure Multiple lines with Scroll Bar in a field 
Sometimes the fields to display are long that you need skipping lines, or even a scroll bar is needed. For 
instance, Address of the member, description of the book, etc. Configure as follow:  
Step 1 
Right  Click  the  Text  Item  and  Choose 
Property Palette 
Set the following item as Yes 
‐ Multi‐line 
‐ Show Vertical Scroll Bar 
 
 
Step 2 
The actual result will be shown only when 
you run Form. 
 
 
 
ISOM3260 Lab (Stage 1) 91
ISOM3260 
Database Design and Administration
Lab 5: Oracle Forms Developer III –
retrieve/update records into database and 
validation trigger
1
Agenda
Oracle Project
Analysis, Design
Implementation, 
Maintenance
Oracle Forms 
Developer
SQL Tools
Oracle Reports 
Developer and 
integration
2
ISOM3260 Lab (Stage 1) 92
Learning Objectives:
• Examine the PL/SQL code to retrieve Student 
records
• Understand 5 common error codes in Oracle
• Apply PL/SQL code to retrieve and update 
Student records
• Understand the need of validation triggers
• Apply different kinds of validation triggers for 
project
3
Recap
Insert student records
4
ISOM3260 Lab (Stage 1) 93
Recap
Student Table in database
5
Examine the code of retrieving 
Students Record
• Open Lab5‐stu.fmb in Oracle Forms Developer 
• Right click “Student_Retrieve_C” and choose 
Layout editor
6
ISOM3260 Lab (Stage 1) 94
Show the PL/SQL code of Retrieve 
button
7
PL/SQL Code for retrieving Student 
Records
SELECT student_name, email, year
INTO :student_edit.student_name, 
:student_edit.email, :student_edit.year 
FROM student 
WHERE student_id=:student_edit.student_id;
8
ISOM3260 Lab (Stage 1) 95
PL/SQL Code for retrieving 
Student Records
SELECT student_name, email, year
Choose to print the 3 fields 
9
PL/SQL Code for retrieving 
Student Records
INTO :student_edit.student_name, 
:student_edit.email, :student_edit.year
Into a list of Location of the Textboxes 
accordingly 
FROM student 
From Student Table in the database
10
ISOM3260 Lab (Stage 1) 96
PL/SQL Code for retrieving Student 
Records
WHERE student_id=:student_edit.student_id;
Set the criteria to display the record, of which 
the student ID equals what user inserts in the 
textbox
: STUDENT_EDIT. STUDENT_ID
11
Test the program
• Retrieve a student by typing a student ID
• Can you change the name, email and year of 
the student retrieved? 
The field is protected and therefore no one can change the value of
the 3 textboxes
12
ISOM3260 Lab (Stage 1) 97
Test the program
• How?
– Right click the textbox
– Set Update allowed and Insert allowed to “NO” to 
avoid user changing the values retrieved under 
Property Palette 
13
Standardized Exception (1)
• Oracle Forms generates standardized 
exceptions to protect data integrity:
• Example:
– Primary Key clash (ORA‐00001)
– NULL value in mandatory key fields (ORA‐01400)
– Value exceed the column size (ORA‐01401) 
– No query result retrieved (ORA‐01403)
– Wrong datatype (ORA‐06502)
(Insert string into numeric fields)
– Some others….
14
ISOM3260 Lab (Stage 1) 98
Standardized Exception (2)
Users are not supposed deal with the error codes when using an
information system. This is considered as an unhandled exception
– a system bug
15
Standardized Exception (3)
• How to check the exception code?
– Type in the code and Google it …
16
ISOM3260 Lab (Stage 1) 99
Class Practice
• Create a page for users to update student 
information
Datablock: STUDENT_UPDATE
Canvas: STUDENT_UPDATE_C
17
VERY IMPORTANT!
• Check the objects you 
just created belong to 
the dummy datablock
(drag the object back to 
the right place)
• Move the datablocks so 
that the datablock of 
the LOGIN page goes 
first
ISOM3260 Lab (Stage 1) 100
Why do we need validation triggers?
There are some instances
Entered by users that are
not valid!!!!
19
Validation Triggers in Forms Developer
• Validation triggers ensure users insert correct 
values in the system
• Example: 
– Student_ID should be in 8‐characters
– Year should not exceed 5 and 
should not less than 0
20
ISOM3260 Lab (Stage 1) 101
Review the codes of Validation Triggers 
21
Summary
• Examine the PL/SQL code to retrieve Student 
records
• Understand 5 common error codes in Oracle
• Apply PL/SQL code to retrieve and update 
Student records
• Understand the need of validation triggers
• Apply different kinds of validation triggers for 
project
22
ISOM3260 Lab (Stage 1) 102
Progress Demonstration 1 (7%)
• Deliverable
1. Entity‐relationship Diagram
2. Data Dictionary
3. Workable system with the following functions:
• Allow staff to insert new product information
• Allow staff to update product information
• Allow customers to register as members 
(i.e., insert new member information)
• Allow customers to update customer information
• Login as members and staff
23
Progress Demonstration 1 (7%)
• Refer to Progress Demonstration 1 checklist 
for the grading criteria
24
ISOM3260 Lab (Stage 1) 103
Reminder: Merging modules into 1
• You should merge all the group work, and 
submit only 1 fmb file for the 
demonstration/final project presentation
• By simple drag and drop 
• Drag all Datablocks, Canvases (and later, 
LOVs, Program Units, Reports, Alerts)
ISOM3260 Lab (Stage 1) 104
 
 
End of Stage 1 
Spring 2014
Page 1 of 11
ISOM3260 Database Design and Administration
Project Guideline
Overview
To truly learn how to build business applications with databases, you need to work on a group
project. The group project is simpler than real life cases, but complex enough to illustrate
common problems that you may encounter.
The project will reinforce the concepts discussed in lectures, especially database design (ER
diagrams, normalization, SQL). By working on the project throughout the semester, you can have
a better understanding of the topics.
Project Requirements
This group project (6 members each) is to develop a database system for a newly established
e-Commerce company. It contributes 30 points (30%) to the course grade. By the end of the
project, students should be able to
Non-technical
 Perform a comprehensive analysis on functional requirements, both data and process
 Allocate different tasks to group members effectively as in IT development projects
 Build professional IT documentations
Technical
 Perform data modeling of the application using Toad Data Modeler
 Build a simple information system using a database programming language - PL/SQL
 Compile valuable managerial reports from the database using SQL
 Work with contemporary Oracle products
Deliverables
1. Progress Demonstrations (15%)
All project groups are required to demonstrate the progress of their project twice throughout
the semester. It is mandatory for each group walk-through the project with the tutor during
the two demonstrations. This is to make sure the project is developed on an appropriate track.
Date Duration Weighing
Progress Demonstration I 13, 14 March 2014 20 mins 7%
Progress Demonstration II 10, 11, 15 April 2014 25 mins 8%
There will be no make-up demonstrations available. Groups which are failed to
demonstrate during the specified periods are scored 0% in the demonstrations.
ISOM3260 Lab (Stage 1) 105
Spring 2014
Page 2 of 11
Progress Demonstration I : System Analysis and Design (7%)
In the first Progress Demonstration, project groups should prepare a progress documentation
which includes the following:
 Data-related
o Conceptual data model (i.e., ER Diagram)
o Data Dictionary
 Describes the attributes names, meanings, data types, sizes and
attribute domains (if any) of each Entity.
 Process-related
o A list of functions to be implemented
In addition to the progress documentation, project groups should also show the table
structure physically created in the Oracle Database.
In addition, all project groups should demonstrate their ‘workable’ systems with the
following functions:
a. Allow staff to insert new product information
b. Allow staff to update product information
d. Allow customers to register as members
e. Allow members to update their personal information
ISOM3260 Lab (Stage 1) 106
Spring 2014
Page 3 of 11
Progress Demonstration II: System Implementation and Testing (8%)
In the second Progress Demonstration, all project groups should demonstrate their ‘workable’
systems with the following functions:
c. Allow staff to prepare managerial reports
(Note: Only prepare for a dummy page for managerial reports by the time of
demonstration)
f. Allow members search products and view product details
g. Allow members to make purchase
h. Allow members to view their order records
Meanwhile, project groups are welcomed to demonstrate the extra functions
implemented
In addition, project groups are required to show a Problem Log. A Problem Log serves the
following purposes:
 Encourage project teams to carefully test the functions of the system before
demonstration
 Help project teams to systematically document system flaws and bugs that are found,
and the person who is responsible for resolving the flaws and bugs
 Help the instructor monitor the progress of each group and resolve conflicts
All group members should take the responsibility of maintaining one Problem Log. You are
recommended to import the Problem Log as a Spreadsheet into online collaboration platforms
such as Google Drive. And be sure that every group member should have access to it.
“Problem Log” is a document that is widely used in IT Project Management. It is important
for group members to maintain problem log such that it serves the intended purposes, you
should not build a Problem Log deliberately for grading purpose.
ISOM3260 Lab (Stage 1) 107
Spring 2014
Page 4 of 11
Sample Problem Log (Extracts):
Problem
ID
Date Created
by
Module Error
Description
Severity Actions to be
taken
Responsible
Person and Status
13 19/3 William Customer Unable to read
multiple lines of
Shopping Cart
Medium Infinite loop –
Declare a
separate variable
for the second
loop
Fixed by Chris
Test OK on 22/3
14 30/3 Angie Customer No scroll bar for
product
description
Low Enable it in
Forms Developer
Fixed by William
Test OK on 1/4
15 31/3 Linda Staff Cannot update
product
information,
records do not
change
accordingly in
Database
High To be checked by
Angie and
William
Problem not fixed
ISOM3260 Lab (Stage 1) 108
Spring 2014
Page 5 of 11
2. Project Demonstration and Final Report (15%)
All groups must conduct final project demonstrations to the professor and tutor on 7-9 May. Each
group is given 30 minutes to demonstrate all functions and managerial reports of their systems.
Details and rules will be given in due course.
After the project demonstration, all project groups are required to submit a Final Report. The
report is the formal document of your system. It should be integrate all work you have done in
this semester, containing the following sections:
1. Introduction to the project – 1 page
2. Conceptual data model (improved from Progress Demonstration I) – 2 to 3 pages
You should present the finalized E-R diagram and provide necessary explanations of the model,
such as why specific entity classes, relationships, and attributes are modeled in your model. You
should state the business rules and assumptions you have made.
3. Logical data model – 1 to 2 pages, landscape
You should map the E-R diagram into relations and normalize the relations into 3NF. To prove
that the relations are all in 3NF, you must list all functional dependencies for every relation.
You may consider using Excel to draw the relations, with hand-drawn functional dependencies
and referential integrity.
4. Data dictionary (improved from Progress Demonstration I) – 2 to 10 pages
You should describe all tables including their attributes, primary keys, and foreign keys.
5. Functional Requirements (improved from Progress Demonstration I) – 2 to 3 pages
You should include a list of functions that you have implemented, including extra functions
(if any), you may find Context Diagram and Use Case Diagram useful in this section.
6. A brief conclusion - 0.5 page
Summarize the state of your project and any thoughts you have on this project including
suggestions and comments for further development. Above all, please highlight the important
features of your project.
Appendix
A. Problem Log
Document the system bugs you found while testing, including the error descriptions, actions taken
person responsible and current status. You can leave the outstanding issues in the Problem Log, if
any.
B. Assumptions
You should document any extra assumptions (in point form) that you make when you implement
the project.
ISOM3260 Lab (Stage 1) 109
Spring 2014
Page 6 of 11
Note:
 The length of the report (excluding Appendix) should not exceed 30 pages.
 As your project is graded based on the final report, it is very important to follow the
guideline above to prepare and organize your final report. Omission of any part of the
report will result in deduction of the project grade.
 You should make sure that the final report is consistent with what you actually
implemented. Consistency is part of the project score.
 You do not have to make any screenshots of your project, and you do not have to copy
any codes written onto your final report
Peer Evaluation
Each member is required to submit a peer evaluation form to evaluate the contribution of all
members after the project submission. You are recommended to reflect the actual
contribution of every group member with honesty.
For students who do not contribute in the project and take the advantage of others’
contribution (i.e., Free-riders), their project scores are adjusted, and may result to a fail
grade in the course.
Important Dates
Progress Demonstration I 13, 14 March 2014
Progress Demonstration II 10, 11, 15 April 2014
Final Report 7, 8 ,9 May 2014
Project Presentation 7, 8, 9 May 2014
ISOM3260 Lab (Stage 1) 110
Spring 2014
Page 7 of 11
Project Case
1. Introduction
Recently founded by a group of HKUST business graduates, Softwareman is an e-Commerce
company selling off-the-shelf PC software package CD/DVD, etc. Your team has been hired
as IT consultants to develop an online purchasing system for the company.
2. Requirements Definition
Softwareman has a similar business model as typical online retailing stores of other products
like Amazon for books, YesAsia for CDs, etc. For simplicity, customers are required to
register as members, before they can log in to the system.
Customers view available products in the system directly. Search functions should be
implemented such that customers can search for their desired products using keywords.
When customer find favorite products, he inserts products into shopping cart. The products in
his shopping cart should be stored such that the products can be retrieved next time when he
logs into the system.
Customer views the shopping cart and makes changes. For instance, changing purchase
quantity of different products, remove undesired products, etc. Customer proceeds with
purchase through shopping cart page when he is ready. He inputs a credit card number to
make purchase. After payment is confirmed, order is stored in the database. Moreover,
customer can view his purchasing record using the system.
On the other hand, staff log into the system to manage products. For instance, adding new
products, changing the inventory of products, modifying price of products, etc.
Manager, who is also the staff of the company, can also login to the system and generate
managerial reports for making decisions on product portfolio, replenishment strategies, etc.
ISOM3260 Lab (Stage 1) 111
Spring 2014
Page 8 of 11
3. Use case diagram of the system
ISOM3260 Lab (Stage 1) 112
Spring 2014
Page 9 of 11
4. Summarized Basic functional requirements
Data Requirement
a. Member data (e.g., name, address, email, password, status, etc.)
b. Product data (e.g., brand, name, price, inventory, description, category, etc.)
c. Order data (e.g., member id, date, order total, etc.)
d. Order line data (e.g., products sold in each order, quantity, subtotal, etc.)
e. Shopping cart line data (e.g., member id, product id, quantity, etc.)
f. Staff login data (e.g., ID, password, etc.)
g. Any other data that you think will be relevant to additional functions
Process Requirement
Staff
a. Allow staff to insert new product information
b. Allow staff to update product information
c. Allow staff to prepare managerial reports (refer below for the managerial reports
requirement)
Customer/Member
d. Allow customers to register as members
e. Allow members to update their personal information
f. Allow members to search products and view product details
g. Allow members to make purchase
h. Allow members to view their order records
Managerial Reports Requirements
a. Report total sales of a selected date
b. Report total sales of last 30 days
(Note: Show the breakdown of the sales calculation by each sales order)
c. Report on the 10 most popular products, in terms of quantity sold
d. Report on the top 10 customers, in terms of sales value
e. Report sales of a particular product, in terms of quantity sold
f. Report sales of a particular category, in terms of quantity sold
g. Report showing stock-out products
ISOM3260 Lab (Stage 1) 113
Spring 2014
Page 10 of 11
5. Assumptions
a) You can assume the verification of validity of credit card is done by the Credit Card
Clearing House. You do not have to verify whether the credit card number, CVC number
and expiry date inserted by the customers are correct.
b) Assume the system only sells off-the-shelf software packages, not
customization/installation services.
c) This is a purchasing system. You can assume that other business functions, such as
Accounting, Logistics, etc. are not handled by this system.
d) In this phase, we decided to store the information of all products in English only.
e) For simplicity, you can use ERD, but not Enhanced ERD, for the system design.
f) For simplicity, you are not required to use images, videos, sound clips in this system.
ISOM3260 Lab (Stage 1) 114
Spring 2014
Page 11 of 11
6. Extra functional requirements (Optional)
Due to time constraints, Softwareman has 3 sets of extra functional requirements which
cannot be included in the basic functional requirements above. Your team may consider
implementing 1 of the 3 sets for Softwareman:
Set 1
a) Update order status
- Allow staff to update order status for orders such that customers know whether the orders
are still under preparation, or on delivery, when they view the order records.
b) ‘Forget password’
- Allow customers to retrieve the login password/reset the login password in case they have
forgotten.
Set 2
a) Apply discount
- Allow customers to enjoy discounts when purchasing products.
Set 3
a) Rate and comment products
Allow customer to rate and comment products. Average rating and all comments are
displayed to other customers.
b) Display “hot products” on the main page
Allow the customer to view hot products on the main page.
(Note: Your team can define “hot products” on your own. For instance, a product maybe
defined as hot in terms of sales quantity)
ISOM3260 Lab (Stage 1) 115

More Related Content

What's hot

Cloud Computing ppt
Cloud Computing pptCloud Computing ppt
Architecture of .net framework
Architecture of .net frameworkArchitecture of .net framework
Architecture of .net framework
Then Murugeshwari
 
Software Designing - Software Engineering
Software Designing - Software EngineeringSoftware Designing - Software Engineering
Software Designing - Software Engineering
Purvik Rana
 
HCI : Activity 1
HCI : Activity 1 HCI : Activity 1
HCI : Activity 1
autamata4
 
Summer Training In Java
Summer Training In JavaSummer Training In Java
Summer Training In JavaDUCC Systems
 
Architecture Description Languages: An Overview
Architecture Description Languages: An OverviewArchitecture Description Languages: An Overview
Architecture Description Languages: An Overviewelliando dias
 
Visual studio
Visual studioVisual studio
Visual studio
AvinashChunduri2
 
Summer training presentation on "CORE JAVA".
Summer training presentation on "CORE JAVA".Summer training presentation on "CORE JAVA".
Summer training presentation on "CORE JAVA".
SudhanshuVijay3
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
Aman Adhikari
 
J2ee
J2eeJ2ee
Jdbc_ravi_2016
Jdbc_ravi_2016Jdbc_ravi_2016
Jdbc_ravi_2016
Ravinder Singh Karki
 
Core java
Core javaCore java
Core java
sharad soni
 
Design process and concepts
Design process and conceptsDesign process and concepts
Design process and conceptsSlideshare
 
COMPUTER GRAPHICS PROJECT REPORT
COMPUTER GRAPHICS PROJECT REPORTCOMPUTER GRAPHICS PROJECT REPORT
COMPUTER GRAPHICS PROJECT REPORT
vineet raj
 
Android chapter02-setup2-emulator
Android chapter02-setup2-emulatorAndroid chapter02-setup2-emulator
Android chapter02-setup2-emulator
guru472
 
Presentation on Core java
Presentation on Core javaPresentation on Core java
Presentation on Core java
mahir jain
 
Constructor and encapsulation in php
Constructor and encapsulation in phpConstructor and encapsulation in php
Constructor and encapsulation in php
SHIVANI SONI
 
User interface design
User interface designUser interface design
User interface design
Naveen Sagayaselvaraj
 
CORE JAVA SYLLABUS FROM SHPINE
CORE JAVA SYLLABUS FROM SHPINECORE JAVA SYLLABUS FROM SHPINE
CORE JAVA SYLLABUS FROM SHPINE
SHPINE TECHNOLOGIES
 

What's hot (20)

Cloud Computing ppt
Cloud Computing pptCloud Computing ppt
Cloud Computing ppt
 
Architecture of .net framework
Architecture of .net frameworkArchitecture of .net framework
Architecture of .net framework
 
Software Designing - Software Engineering
Software Designing - Software EngineeringSoftware Designing - Software Engineering
Software Designing - Software Engineering
 
HCI : Activity 1
HCI : Activity 1 HCI : Activity 1
HCI : Activity 1
 
Summer Training In Java
Summer Training In JavaSummer Training In Java
Summer Training In Java
 
Architecture Description Languages: An Overview
Architecture Description Languages: An OverviewArchitecture Description Languages: An Overview
Architecture Description Languages: An Overview
 
Visual studio
Visual studioVisual studio
Visual studio
 
Summer training presentation on "CORE JAVA".
Summer training presentation on "CORE JAVA".Summer training presentation on "CORE JAVA".
Summer training presentation on "CORE JAVA".
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
J2ee
J2eeJ2ee
J2ee
 
Jdbc_ravi_2016
Jdbc_ravi_2016Jdbc_ravi_2016
Jdbc_ravi_2016
 
Core java
Core javaCore java
Core java
 
Design process and concepts
Design process and conceptsDesign process and concepts
Design process and concepts
 
COMPUTER GRAPHICS PROJECT REPORT
COMPUTER GRAPHICS PROJECT REPORTCOMPUTER GRAPHICS PROJECT REPORT
COMPUTER GRAPHICS PROJECT REPORT
 
JAVA Media Player
JAVA Media PlayerJAVA Media Player
JAVA Media Player
 
Android chapter02-setup2-emulator
Android chapter02-setup2-emulatorAndroid chapter02-setup2-emulator
Android chapter02-setup2-emulator
 
Presentation on Core java
Presentation on Core javaPresentation on Core java
Presentation on Core java
 
Constructor and encapsulation in php
Constructor and encapsulation in phpConstructor and encapsulation in php
Constructor and encapsulation in php
 
User interface design
User interface designUser interface design
User interface design
 
CORE JAVA SYLLABUS FROM SHPINE
CORE JAVA SYLLABUS FROM SHPINECORE JAVA SYLLABUS FROM SHPINE
CORE JAVA SYLLABUS FROM SHPINE
 

Viewers also liked

Metabolomics: data acquisition, pre-processing and quality control
Metabolomics: data acquisition, pre-processing and quality controlMetabolomics: data acquisition, pre-processing and quality control
Metabolomics: data acquisition, pre-processing and quality controlCOST action BM1006
 
Source code for view details(database)
Source code for view details(database)Source code for view details(database)
Source code for view details(database)welcometofacebook
 
Souce code of validation trigger examples(database)
Souce code of validation trigger examples(database)Souce code of validation trigger examples(database)
Souce code of validation trigger examples(database)welcometofacebook
 
cltv calculation-calyx corolla
cltv calculation-calyx corolla cltv calculation-calyx corolla
cltv calculation-calyx corolla welcometofacebook
 
Class+3+ +quantitative+analysis+exercise+answer+key
Class+3+ +quantitative+analysis+exercise+answer+keyClass+3+ +quantitative+analysis+exercise+answer+key
Class+3+ +quantitative+analysis+exercise+answer+keywelcometofacebook
 
EVC exercise-novel motor oil
EVC exercise-novel motor oilEVC exercise-novel motor oil
EVC exercise-novel motor oilwelcometofacebook
 
Quantitative exercise-toasty oven
Quantitative exercise-toasty ovenQuantitative exercise-toasty oven
Quantitative exercise-toasty ovenwelcometofacebook
 
Source code for search engine(database)
Source code for search engine(database)Source code for search engine(database)
Source code for search engine(database)welcometofacebook
 
Database fundamentals(database)
Database fundamentals(database)Database fundamentals(database)
Database fundamentals(database)welcometofacebook
 
Data Warehouse Best Practices
Data Warehouse Best PracticesData Warehouse Best Practices
Data Warehouse Best Practices
Eduardo Castro
 

Viewers also liked (20)

Metabolomics: data acquisition, pre-processing and quality control
Metabolomics: data acquisition, pre-processing and quality controlMetabolomics: data acquisition, pre-processing and quality control
Metabolomics: data acquisition, pre-processing and quality control
 
Source code for view details(database)
Source code for view details(database)Source code for view details(database)
Source code for view details(database)
 
Souce code of validation trigger examples(database)
Souce code of validation trigger examples(database)Souce code of validation trigger examples(database)
Souce code of validation trigger examples(database)
 
cltv calculation-calyx corolla
cltv calculation-calyx corolla cltv calculation-calyx corolla
cltv calculation-calyx corolla
 
EVC exercise-odi case
EVC exercise-odi caseEVC exercise-odi case
EVC exercise-odi case
 
jones blair calculations
jones blair calculationsjones blair calculations
jones blair calculations
 
Class+3+ +quantitative+analysis+exercise+answer+key
Class+3+ +quantitative+analysis+exercise+answer+keyClass+3+ +quantitative+analysis+exercise+answer+key
Class+3+ +quantitative+analysis+exercise+answer+key
 
CLTV exercise-Instyle
CLTV exercise-InstyleCLTV exercise-Instyle
CLTV exercise-Instyle
 
EVC exercise-novel motor oil
EVC exercise-novel motor oilEVC exercise-novel motor oil
EVC exercise-novel motor oil
 
Quantitative exercise-toasty oven
Quantitative exercise-toasty ovenQuantitative exercise-toasty oven
Quantitative exercise-toasty oven
 
Solution6(database)
Solution6(database)Solution6(database)
Solution6(database)
 
Source code for search engine(database)
Source code for search engine(database)Source code for search engine(database)
Source code for search engine(database)
 
Exercise6(database)
Exercise6(database)Exercise6(database)
Exercise6(database)
 
Exercise3(database)
Exercise3(database)Exercise3(database)
Exercise3(database)
 
Solution5(database)
Solution5(database)Solution5(database)
Solution5(database)
 
Database fundamentals(database)
Database fundamentals(database)Database fundamentals(database)
Database fundamentals(database)
 
Solution1(database)
Solution1(database)Solution1(database)
Solution1(database)
 
Data Warehouse Best Practices
Data Warehouse Best PracticesData Warehouse Best Practices
Data Warehouse Best Practices
 
Solution4(database)
Solution4(database)Solution4(database)
Solution4(database)
 
Solution3(database)
Solution3(database)Solution3(database)
Solution3(database)
 

Similar to database design intro(database)

It 405 materi 1 pengantar
It 405 materi 1   pengantarIt 405 materi 1   pengantar
It 405 materi 1 pengantar
Ayi Purbasari
 
It 405 materi 1 pengantar
It 405 materi 1   pengantarIt 405 materi 1   pengantar
It 405 materi 1 pengantar
Ayi Purbasari
 
It 405 materi 1 pengantar
It 405 materi 1   pengantarIt 405 materi 1   pengantar
It 405 materi 1 pengantar
Ayi Purbasari
 
Blue Prism Training Agenda
Blue Prism Training AgendaBlue Prism Training Agenda
Blue Prism Training Agenda
Saranya Vempalli
 
Training Researchers with Sakai
Training Researchers with SakaiTraining Researchers with Sakai
Training Researchers with SakaiJez Cope
 
Lucene BootCamp
Lucene BootCampLucene BootCamp
Lucene BootCampGokulD
 
Lec01_Course_Overview.ppt
Lec01_Course_Overview.pptLec01_Course_Overview.ppt
Lec01_Course_Overview.ppt
ssuser4ca1eb
 
Introduction.pptx
Introduction.pptxIntroduction.pptx
Introduction.pptx
Samar954063
 
Introductie slides Agile Software Architecture
Introductie slides Agile Software ArchitectureIntroductie slides Agile Software Architecture
Introductie slides Agile Software Architecture
Maikel Meeuwse
 
Introducing ORCID at Imperial College London
Introducing ORCID at Imperial College LondonIntroducing ORCID at Imperial College London
Introducing ORCID at Imperial College London
Torsten Reimer
 
EE6104_Course_Outline.pdf
EE6104_Course_Outline.pdfEE6104_Course_Outline.pdf
EE6104_Course_Outline.pdf
ssuserfa167c
 
BIT-UCSC Final Project
BIT-UCSC Final ProjectBIT-UCSC Final Project
BIT-UCSC Final Project
Aurora Computer Studies
 
SAD - Lecture to do an inforamtion 2.pdf
SAD - Lecture to do an inforamtion 2.pdfSAD - Lecture to do an inforamtion 2.pdf
SAD - Lecture to do an inforamtion 2.pdf
GovandZangana
 
Modeling and abstraction, software development process [Software Design] [Com...
Modeling and abstraction, software development process [Software Design] [Com...Modeling and abstraction, software development process [Software Design] [Com...
Modeling and abstraction, software development process [Software Design] [Com...
Ivano Malavolta
 
lecture1.pdf
lecture1.pdflecture1.pdf
lecture1.pdf
Tamer Nadeem
 
Managing Undergraduate Research - Perspective from Dept CS
Managing Undergraduate Research - Perspective from Dept CSManaging Undergraduate Research - Perspective from Dept CS
Managing Undergraduate Research - Perspective from Dept CS
Lenandlar Singh
 
L1-intro(2).pptx
L1-intro(2).pptxL1-intro(2).pptx
L1-intro(2).pptx
DanishMahmood23
 
Neo4j GraphDay Munich - How to make your GraphDB project successful
Neo4j GraphDay Munich - How to make your GraphDB project successfulNeo4j GraphDay Munich - How to make your GraphDB project successful
Neo4j GraphDay Munich - How to make your GraphDB project successful
Neo4j
 
Introduction to Cloud computing
 Introduction to Cloud computing Introduction to Cloud computing
Introduction to Cloud computing
AmmarHassan80
 

Similar to database design intro(database) (20)

It 405 materi 1 pengantar
It 405 materi 1   pengantarIt 405 materi 1   pengantar
It 405 materi 1 pengantar
 
It 405 materi 1 pengantar
It 405 materi 1   pengantarIt 405 materi 1   pengantar
It 405 materi 1 pengantar
 
It 405 materi 1 pengantar
It 405 materi 1   pengantarIt 405 materi 1   pengantar
It 405 materi 1 pengantar
 
Blue Prism Training Agenda
Blue Prism Training AgendaBlue Prism Training Agenda
Blue Prism Training Agenda
 
Training Researchers with Sakai
Training Researchers with SakaiTraining Researchers with Sakai
Training Researchers with Sakai
 
Lucene BootCamp
Lucene BootCampLucene BootCamp
Lucene BootCamp
 
Lec01_Course_Overview.ppt
Lec01_Course_Overview.pptLec01_Course_Overview.ppt
Lec01_Course_Overview.ppt
 
Introduction.pptx
Introduction.pptxIntroduction.pptx
Introduction.pptx
 
Introductie slides Agile Software Architecture
Introductie slides Agile Software ArchitectureIntroductie slides Agile Software Architecture
Introductie slides Agile Software Architecture
 
Introducing ORCID at Imperial College London
Introducing ORCID at Imperial College LondonIntroducing ORCID at Imperial College London
Introducing ORCID at Imperial College London
 
EE6104_Course_Outline.pdf
EE6104_Course_Outline.pdfEE6104_Course_Outline.pdf
EE6104_Course_Outline.pdf
 
Introduction To Web Development Course
Introduction To Web Development CourseIntroduction To Web Development Course
Introduction To Web Development Course
 
BIT-UCSC Final Project
BIT-UCSC Final ProjectBIT-UCSC Final Project
BIT-UCSC Final Project
 
SAD - Lecture to do an inforamtion 2.pdf
SAD - Lecture to do an inforamtion 2.pdfSAD - Lecture to do an inforamtion 2.pdf
SAD - Lecture to do an inforamtion 2.pdf
 
Modeling and abstraction, software development process [Software Design] [Com...
Modeling and abstraction, software development process [Software Design] [Com...Modeling and abstraction, software development process [Software Design] [Com...
Modeling and abstraction, software development process [Software Design] [Com...
 
lecture1.pdf
lecture1.pdflecture1.pdf
lecture1.pdf
 
Managing Undergraduate Research - Perspective from Dept CS
Managing Undergraduate Research - Perspective from Dept CSManaging Undergraduate Research - Perspective from Dept CS
Managing Undergraduate Research - Perspective from Dept CS
 
L1-intro(2).pptx
L1-intro(2).pptxL1-intro(2).pptx
L1-intro(2).pptx
 
Neo4j GraphDay Munich - How to make your GraphDB project successful
Neo4j GraphDay Munich - How to make your GraphDB project successfulNeo4j GraphDay Munich - How to make your GraphDB project successful
Neo4j GraphDay Munich - How to make your GraphDB project successful
 
Introduction to Cloud computing
 Introduction to Cloud computing Introduction to Cloud computing
Introduction to Cloud computing
 

More from welcometofacebook

competing in a global market(4210)
competing in a global market(4210)competing in a global market(4210)
competing in a global market(4210)welcometofacebook
 
distribution strategies calyx and corolla(4210)
distribution strategies calyx and corolla(4210)distribution strategies calyx and corolla(4210)
distribution strategies calyx and corolla(4210)welcometofacebook
 
distribution strategies(4210)
distribution strategies(4210)distribution strategies(4210)
distribution strategies(4210)welcometofacebook
 
product and brand strategies(4210)
product and brand strategies(4210)product and brand strategies(4210)
product and brand strategies(4210)welcometofacebook
 
overview of marketing strategy(4210)
overview of marketing strategy(4210)overview of marketing strategy(4210)
overview of marketing strategy(4210)welcometofacebook
 
Final exam review answer(networking)
Final exam review answer(networking)Final exam review answer(networking)
Final exam review answer(networking)welcometofacebook
 
Midterm review questions ans(networking)
Midterm review questions ans(networking)Midterm review questions ans(networking)
Midterm review questions ans(networking)welcometofacebook
 
IP adress and routing(networking)
IP adress and routing(networking)IP adress and routing(networking)
IP adress and routing(networking)welcometofacebook
 
Layer 2 switching fundamentals(networking)
Layer 2 switching fundamentals(networking)Layer 2 switching fundamentals(networking)
Layer 2 switching fundamentals(networking)welcometofacebook
 
Common types of networks(networking)
Common types of networks(networking)Common types of networks(networking)
Common types of networks(networking)welcometofacebook
 

More from welcometofacebook (20)

consumer behavior(4210)
consumer behavior(4210)consumer behavior(4210)
consumer behavior(4210)
 
competing in a global market(4210)
competing in a global market(4210)competing in a global market(4210)
competing in a global market(4210)
 
promotion strategies(4210)
promotion strategies(4210)promotion strategies(4210)
promotion strategies(4210)
 
pricing strategies(4210)
pricing strategies(4210)pricing strategies(4210)
pricing strategies(4210)
 
Pharmasim
PharmasimPharmasim
Pharmasim
 
distribution strategies calyx and corolla(4210)
distribution strategies calyx and corolla(4210)distribution strategies calyx and corolla(4210)
distribution strategies calyx and corolla(4210)
 
distribution strategies(4210)
distribution strategies(4210)distribution strategies(4210)
distribution strategies(4210)
 
the birth of swatch(4210)
the birth of swatch(4210)the birth of swatch(4210)
the birth of swatch(4210)
 
product and brand strategies(4210)
product and brand strategies(4210)product and brand strategies(4210)
product and brand strategies(4210)
 
stp case jones blair(4210)
stp case jones blair(4210)stp case jones blair(4210)
stp case jones blair(4210)
 
stp(4210)
stp(4210)stp(4210)
stp(4210)
 
situational analysis(4210)
situational analysis(4210)situational analysis(4210)
situational analysis(4210)
 
quantitative analysis(4210)
quantitative analysis(4210)quantitative analysis(4210)
quantitative analysis(4210)
 
overview of marketing strategy(4210)
overview of marketing strategy(4210)overview of marketing strategy(4210)
overview of marketing strategy(4210)
 
Final exam review answer(networking)
Final exam review answer(networking)Final exam review answer(networking)
Final exam review answer(networking)
 
Midterm review questions ans(networking)
Midterm review questions ans(networking)Midterm review questions ans(networking)
Midterm review questions ans(networking)
 
IP adress and routing(networking)
IP adress and routing(networking)IP adress and routing(networking)
IP adress and routing(networking)
 
TCP/IP(networking)
TCP/IP(networking)TCP/IP(networking)
TCP/IP(networking)
 
Layer 2 switching fundamentals(networking)
Layer 2 switching fundamentals(networking)Layer 2 switching fundamentals(networking)
Layer 2 switching fundamentals(networking)
 
Common types of networks(networking)
Common types of networks(networking)Common types of networks(networking)
Common types of networks(networking)
 

Recently uploaded

Fundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptxFundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptx
manasideore6
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
Kamal Acharya
 
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming PipelinesHarnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Christina Lin
 
An Approach to Detecting Writing Styles Based on Clustering Techniques
An Approach to Detecting Writing Styles Based on Clustering TechniquesAn Approach to Detecting Writing Styles Based on Clustering Techniques
An Approach to Detecting Writing Styles Based on Clustering Techniques
ambekarshweta25
 
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
ydteq
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Sreedhar Chowdam
 
Fundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptxFundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptx
manasideore6
 
Forklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella PartsForklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella Parts
Intella Parts
 
digital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdfdigital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdf
drwaing
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
zwunae
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
heavyhaig
 
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
MdTanvirMahtab2
 
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdfGoverning Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
WENKENLI1
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
JoytuBarua2
 
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
dxobcob
 
Hierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power SystemHierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power System
Kerry Sado
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
fxintegritypublishin
 
DfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributionsDfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributions
gestioneergodomus
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
bakpo1
 
Modelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdfModelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdf
camseq
 

Recently uploaded (20)

Fundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptxFundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptx
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
 
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming PipelinesHarnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
 
An Approach to Detecting Writing Styles Based on Clustering Techniques
An Approach to Detecting Writing Styles Based on Clustering TechniquesAn Approach to Detecting Writing Styles Based on Clustering Techniques
An Approach to Detecting Writing Styles Based on Clustering Techniques
 
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
 
Fundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptxFundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptx
 
Forklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella PartsForklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella Parts
 
digital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdfdigital fundamental by Thomas L.floydl.pdf
digital fundamental by Thomas L.floydl.pdf
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
 
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
 
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdfGoverning Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
 
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
一比一原版(Otago毕业证)奥塔哥大学毕业证成绩单如何办理
 
Hierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power SystemHierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power System
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
 
DfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributionsDfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributions
 
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
一比一原版(SFU毕业证)西蒙菲莎大学毕业证成绩单如何办理
 
Modelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdfModelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdf
 

database design intro(database)