Any idea as how I should do that right now college? Ill look up and see if we have any Oracle courses
Also would another MOS be better suited for me?
I am unable to determine if another MOS is better suited for you since I am not familiar with Marine MOS's. However, it is important to know that Marines are infantrymen first with their MOS second. Your primary duty will be as a combat soldier.
SAP is proprietary while Oracle uses an open standard. An open standard can be considered default knowledge. I have taken both computer science database theory classes and an MIS class on database management. I have also worked in ERP for the last 5 years. My focus is on Oracle, so my comments may be one sided.
In my understanding, people with knowledge of SAP are considered consultants on a contract. SAP programmers tend to focus on a single aspect of the manufacturing phase, more than one aspect if they are able learn more. While it may take 10 SAP programmers to implement a specific phase, it may only take 1 programmer to maintain this phase once it has been implemented. For this reason, SAP programmers tend not to work at any one company for very long. They tend to think of themselves as self-employed consultants, business owners, or even as an entrepreneur. I consider them to have little job stability and they typically seem to market themselves in a manner similar to an Amway salesman. They seem inherently nervous. However, it is my belief that SAP is the better technology. I am just not educated in SAP. There are times when Oracle's control of an open standard through wide exceptance by business, results in a butchered programming language. Oracle does not put much effort into pedantic principles and sometimes even their product functionality is incomplete.
For you while in school, your best bet is to take the class for Database Management offered by your MIS program. This covers the surface conceptual theory well enough to obtain an understanding of what databases are. If you have a strong technical side, you may consider the computer science course on database management system theory but this may be too much and too hard. My CS class had a semester project to develop a website with basic functionality similar to an ATM machine. However, they went to little effort to teach us the SQL or the CGI-Interface with Java. We had to learn that on our own. My supervisor at my last job was an MIS major while I am a Computer Science major with an engineering degree. My programming skills were better than his but he used me as a finely honed tool to get the work done.
It is important to understand there are two main types of databases:
- Strongly Normalized (such as a bank transaction)
- Poorly Normalized (such as insurance data)
Database Normalization depends on the amount of data repetition. How often information is repeated within a database.
An example of a strongly normalized database is one used for bank transactions that involve an ATM. Such transactions follow the ACID properties and are strongly normalized. Each transaction is isolated from the others. The data may be easily separated and stored in different tables. The data is Atomic, small, finite, easily separated from its accompanying data.
The tables are smaller with fewer fields.
ACID
- Atomicity
- Control
- Isolation
- Durability
An example of a poorly normalized database is one used for insurance information. Insurance data is often repeated in multiple tables to allow for fast response times when running reports. The data is larger in its form, such as 5000 character fields for notes from insurance adjusters. The data also contains numerous relationships to other data fields and thus may not be easily separated.
The tables are larger with many fields since it can be difficult to isolate the data.
It is these relationships between data that are important to be aware of. It is the relationship of the data that modern databases are constructed from, using the
Entity Relationship Model. This is not the best model to construct a database from but it is used in practice the most, it is easy to understand, and it has a mathematical background that allows for strong teaching methods in school.
Another Data Model is the
Object Relational Model but I have not seen this in practice. The Object Relational Model combines the 1970's relational model with modern Object Orientation. It is this model I hope to see more of in the future and Oracle has been implementing this model more since its database version 8. Oracle is currently on version 11 of its database. The object relational model will gain more acceptance as the slow-moving datacenters slowly adopt its methods and programming models.
Database Models:
MIS Database Management
- The Context of Database Management
- The Database Environment
- Database Development Process
- Database Analysis
- The Entity Relationship Model
- The Enhanced E-R Model and Business Rules
- Database Design
- Logical Database Design and the Relational Model
- Physical Database Design and Performance
- Implementation
- SQL
- Advanced SQL
- The Client/Server Database Environment
- The Internet Database Environment
- Database Warehousing
- Advanced Database Topics
- Data and Database Administration
- Distributed Databases
- Object-Oriented Data Modeling
- Object-Oriented Database Development
Computer Science Database Management Systems
- Basics
- Introduction to Database Systems
- The Entity-Relationship Model
- The Relational Model
- Relational Queries
- Relational Algebra and Calculus
- SQL: Queries, Programming, Triggers
- Query by example
- Data Storage and Indexing
- Storing Data: Disks and Files
- File Organizations and Indexes
- Tree Structured Indexing
- Hash Based Indexing
- Query Evaluation
- External Sorting
- Evaluation of Relational Operators
- Introduction to Query Optimization
- Database Design
- Schema Refinement and Normal Forms
- Transaction Management
- Transaction Management Overview
- Concurrency Control
- Crash Recovery
My understanding of school grades and eventual jobs is thus:
- Students with an 'A' average go on to design systems. Such as engineers that work at a shipbuilding company.
- Students with a 'C' average go on to operate systems. Such as officers in the military with an engineering education.
- Students with a 'B' average fall somewhere inbetween designing and operating the systems.
For instance, I received B's and C's in my core programming classes and now program in the insurance sector. Those students in my classes that received A's went on to work for Google, Oracle, and other engineering companies. Personally, I considered returning to the military after achieving my engineering degree but decided to use my past mechanical experience as a ship's mechanic to apply for (and receive) a few patents that I am now attempting to produce, distribute, and market.
Sorry for the long-winded response. I did not know when to stop. However, this is the core knowledge that will get someone through most any database related job interview.