Ans
Dynamic initialization of objects means that we will provide the value at rum time of the program. This is referred as dynamic initialization of object. In C++ a variable can be
Initialized at run time using the expressions at the place of declaration. Dynamic initialization of variable will provide the value at run time that is not fixed at starting time of program. Dynamic programming will provide the value at running condition at run time.
Dynamic initialization means that we will provide the value to a variable when it used for first time in the programming.
The following is the reason that why Dynamic initialization of objects are used
1) We can provide the value according to the user requirement
2) We can change the format of the variable at rum
3) We can different types of values at run time
4) User can change its value frequently
There are three ways to initialize Dynamic objects
1) Dynamic declaration with new operator
When we define a variable, we specify a type and a name. When we dynamically allocate an object, we specify a type but do not name the object. Instead, the new expression returns a pointer to the newly allocated object; we use that pointer to access the object:
int i; // uninitialized int variable
int *pi = new int; // pi points to dynamically allocated,
2) Initialization of Dynamic objects
In these concepts we will provide the value to dynamic objects we will generate.
3) Default value assign to objects
Q What is exceptional handling ? How the exception handling is useful/preferred than normal error checking codes ? Illustrate
Ans.
Exceptions are run-time anomalies that a program may detect for example divided by zero. When program is running then exception will arrive that exception can be catch by different statement provided by C++. Exceptions can be classified into two category.
1) System define Exception Handling
2) User define Exception handling
1) System define exception handling
System define exception handling is an handling in which we will handle errors that has been define by the system. For Example number is divided by zero that means when we will divide a number with zero then this exception will throw by the system catch by the exception placed by the user
2) User define exception handling
User define exception handling is a handling in which we will try to solve the error that will generated by the user program. For Example we want to add two number and we place a particular condition if any number is negative then it must show an error to us. If any user will give negative number then it will throw an exception.
User define exception handling will use the following three statements
1. Trying the normal flow: To deal with the expected behavior of a program, use the try or __try keyword as in the following syntax:
try {Behavior}
The try or __try keyword is required. It lets the compiler know that you are attempting a normal flow of your program. The actual behavior that needs to be evaluated is included between an opening curly bracket “{“ and a closing curly bracket “}”. Inside of the brackets, implement the normal flow that the program should follow, at least for this section of the code.
2. Catching Errors: During the flow of the program as part of the try section, if an abnormal behavior occurs, instead of letting the program crash or instead of letting the compiler send the error to the operating system, you can transfer the flow of the program to another section that can deal with it. The syntax used by this section is:
catch(Argument) {WhatToDo}
This section always follows the try section and there must not be any code between the try’s closing bracket and the catch section. This means that, if you are using a __finally section, it must not be included before a catch section. The catch keyword is required and follows the try section.
The catch behaves a little like a function. It uses an argument that may be passed by the previous try section. The argument can be a regular variable or a class. If there is no argument to pass, the catch must at least take a three-period argument as in catch(…). The behavior of the catch clause starts with an opening curly bracket “{“ and ends with a closing curly bracket “}”. The inside of the brackets is called the body of the catch clause. Therefore, use the body of the catch to deal with the error that was caused.
Combined with the try or __try block, the syntax of an exception would be:
try {
// Try the program flow
}
catch(Argument)
{
// Catch the exception
}
3. Throwing an error: There are two main ways an abnormal program behavior is transferred from the try block to the catch clause. This transfer is actually carried by the throw keyword. Unlike the try and catch blocks, the throw keyword is independent of a formal syntax but still follows some rules. For example, it is usually included in a try or __try section.
For Example
#include
void main()
{
int a,b;
try
{
cout<<"Enter Two values"<
if(a<=10)
throw(a);
else
cout<<"Addition is "<
}catch(int p) { cout<<"Exception handling "<
}
According to this example we are placing the try block on the value which we are accepting from the user. If user is entering wrong value then it will throw an exception that will catched by catch block that we have placed in the last of the program.
Advantage of Exception Handling
1) We can handle the error according to the user requirement
2) We can show user define message in the case of error.
3) It will stop the normal execution of the program
4) We recover from the position from where program has been stopped.
Disadvantage
1) It required unnecessary memory space to catch and throw the expected errors to the user.
2) Multiple try and catch block of exception handling can reduce the performance of the system
Q what is object oriented programming? how it is different from procedural language.
Ans
Object oriented programming is a programming in which we will focus on objects. As we know that an object is the representation of any thing that we are viewing in the world. For Example Name of student is an object that contains different types of attributes that will make the different between two objects.The following difference between object oriented and procedural language will clear how both are different from each other.
Procedural Language Object Oriented Language.
1) It is Function based Language
1) It is Object Based language
2) It use top-down design approach 2) It use bottom-up approach
3) Functions are define earlier 3) functions can define at run time as well design time
4) It does not provide the facility of multiple inheritance 4) It provide multiple inheritance concepts
5) Software complexity can not be managed 5) Software complexity can be managed
6) A large problem is sub-divided into different sub parts 6) A large problem is sub-divided into different sub objects
7) We can not generate multiple instance of the function 7) we can generate the multiple instance of an object
8) Data hiding can not be performed 8) Data hiding can be performed
9) No message passing concepts are used between different types of functions 9) Message passing concepts are used to communicate between different objects
10) Access specifier is not possible 10) Access specifier is possible
11) function abstraction can not be possible 11) We can perform data abstraction
12) Multiple functions can be combined in single function 12) Multiple objects are combined into a class
13) We can not use the concepts of inheritance 13) We can use the concepts of inheritance
14) We have to perform static binding of data 14) we can perform static and dynamic binding
Q What is function overloading? Where and why we use this concept. Explain with the help of example.
Ans :
Function overloading means that we will use different functions with same name but each function will contains different arguments or data type of argument will be different.In other word we can say that two function will share the same name but the arguments will different from each other.
For Example
#include
using namespace std;
void f(int i); // integer parameter
void f(int i, int j); // two integer parameters
void f(double k); // one double parameter
int main()
{
f(10); // call f(int)
f(10, 20); // call f(int, int)
f(12.23); // call f(double)
return 0;
}
void f(int i)
{
cout << "In f(int), i is " << i << '\n';
}
void f(int i, int j)
{
cout << "In f(int, int), i is " << i;
cout << ", j is " << j << '\n';
}
void f(double k)
{
cout << "In f(double), k is " << k << '\n';
}
This program produces the following output:
In f(int), i is 10
In f(int, int), i is 10, j is 20
In f(double), k is 12.23
According this example we are using one function with name f first function is containing with single arguments and second function is containing two arguments and third function contains one arguments with single argument but the different between first function and second function is format of arguments we pass in the function.
Where we can use Function overloading
1) When we have to use same function on different types of data
2) When we need one function that can perform different operation with different types of data
3) Function overloading will used when we donot know which type of data can be input by the user.
Why we use the Function Overloading
1) Improving the interface between functions and use request. In other word we can say that user can use the any arguments without knowing which type argument is required by the function.
2) Function Overloading will be used when we want to use the same function for different purpose point of view.
Advantage of Function overloading
1) we can use same function multiple times
2) we can accept different types of values
3) User can easily switch from one value to another value
4) Processing of data will be hidden from the user that means user does not know about the working of a function
5) It will increase the readability of code
6) Function overloading when we want to call a particular data with different requirements
Disadvantage of Function overloading
1) No Proper decision about which function is about to execute. Suppose we created with two functions that are using same arguments but argument contains same format of data that time function overloading will show an error to us.For Example
// Overloading ambiguity.
#include
using namespace std;
float myfunc(float i);
double myfunc(double i);
int main()
{
// unambiguous, calls myfunc(double)
cout << myfunc(10.1) << " ";
// ambiguous
cout << myfunc(10);
return 0;
}
float myfunc(float i)
{
return i;
}
double myfunc(double i)
{
return i;
}
According to this example we are overloading the function myfunc. If we provide the value with 10.1 then compiler will be confused which will be executed and which not be executed then it will show an error to us. This is main disadvantage of Function Overloading
Q What are macros ? How do they help . Explain with the help of example.
Ans
The macro is that part of the compiler that performs various
text manipulations on your program prior to the actual translation of your source code into object code. You can give text-manipulation commands to the macro. These commands are called macro directives and, although not technically part of the C++ language, they expand the scope of its programming environment.The C++ macro contains the following directives:
1) #define
It is used to define an identifier and a character sequence that will be substituted for the identifier each time it is encountered in the source file. The identifier is called a macro name and the replacement process is called macro substitution. The general form of
the directive is #define macro-name character-sequence
Notice that there is no semicolon in this statement. There can be any number of spaces between the identifier and the character sequence, but once the sequence begins, it is terminated only by a newline
Example
#define UP 1
#define DOWN 0
According to this example where ver we will use UP that will be converted by 1 and DOWN will be converted by 0
2) #error
When the #error directive is encountered, it forces the compiler to stop compilation.This directive is used primarily for debugging. The general form of the directive is #error error-message The error-message is not between double quotes. When the compiler
encounters this directive, it displays the error message and other information, and then terminates compilation.
3) #include
This macro will instruct the compiler to include either a
standard header or another source file with the file that contains the #include directive. The name of the standard headers are enclosed between angle brackets, as shown in the programs throughout this book. For example,
#include
4) #if #else #elif
#endif #ifdef #ifndef
The general idea behind the #if directive is that if the constant expression following the #if is true, then the code between it and an #endif will be compiled; otherwise,the code will be skipped over. #endif is used to mark the end of an #if block.
The general form of #if is
#if constant-expression
statement sequence
#endif
If the constant expression is true, the block of code will be compiled; otherwise, it will
be skipped. For example:
// A simple #if example.
#include
#define MAX 100
int main()
{
#if MAX>10
cout << "Extra memory required.\n";
#endif
// ...
return 0;
}
5) #undef
The #undef directive is used to remove a previously defined definition of a macro name. The general form is
#undef macro-name
6) #line
The #line directive is used to change the contents of _ _LINE_ _ and _ _FILE_ _,
which are predefined macro names. _ _LINE_ _ contains the line number of the
line currently being compiled, and _ _FILE_ _ contains the name of the file being
compiled. The basic form of the #line command is
#line number “filename”
Here, number is any positive integer, and the optional filename is any valid file
identifier. The line number becomes the number of the current source line, and the
filename becomes the name of the source file. #line is primarily used for debugging
purposes and for special applications.
For example, the following program specifies that the line count will begin with 200.
The cout statement displays the number 202 because it is the third line in the
program after the #line 200 statement.
For Example
#include
using namespace std;
#line 200 // set line counter to 200
int main() // now this is line 200
{ // this is line 201
cout << _ _LINE_ _; // outputs 202
return 0;
}
7) #pragma
The #pragma directive is an implementation-defined directive that allows various instructions, defined by the compiler’s creator, to be given to the compiler. The general form of the #pragma directive is
#pragma name Here, name is the name of the #pragma you want. If the name is unrecognized by the compiler, then the #pragma directive is simply ignored and no error results.
Advantage of Macro
1) single time declaration will perform that will be used multiple time
2) Single time modification will change the entire program where it has been used.
3) Compiler will ignore macro when compiler is done
4) Macro will reduce the workload of processing
5) We can easily understand the program
Q Differentiate between constructor and destructor
Constructor Destructor
1) single class can contains many constructor 1) class contains only one destructor
2) Constructor can contains different arguments 2) Destructor does not contain any arguments
3) Constructor will be automatically executed or worked when object of the class is generated 3) Destructor will be automatically destroyed when class is destroyed
4) Constructor can be overloaded 4) Destructor can not be overloaded
5) Constructor contains the same name as the class is having 5) It will contain the same name of class but it is preceded by ~ symbol
6) constructor contains different styles
a) Simple constructor
b) Constructor with arguments
c) Copy constructor 6) It contains single type
7) Constructor contains only default arguments 7) It does not contains any default arguments
8) It can not refer to their addresses 8) It will be referred to address of constructor
9) It can be used to initialize different types of variables 9) It can be used to free the memory that is provided to different variable that we have declared in the program
10) It does not return any type of data to calling program 10) It will return any value but it will terminate the operation of the constructor
Q Define Constructor .what are the properties of a constructor ? Explain the different types of constructors used in C++
Ans :
Constructor is a function that will contains the same name as the class is having. The constructor will be executed when we will generate an object of the class.
There are following properties are used in constructor
1) constructor should be declared in public section
2) It should be invoked automatically when we will generate an object of the class
3) It will return any type of value
4) We can not refer to their addresses
5) What ever object of the class that can not be used some where else in the program. for programming
6) They can have default arguments
7) Constructor can not be inherited
There are different constructor are used in C++
1) Default Constructor
Default Constructor is a constructor. Default Constructor that does not contains any parameter. Default constructor which contains the same name as the class is having
Syntax
class abc
{
public:
abc() //This is the default constructor
{
}
}
According to this example abc is the class and abc is constructor that does not contains any arguments
2) Parameterized Constructor
Parameterized constructor is the constructor that will contain different parameter that we will pass to constructor. Parameterized constructor will accept the arguments from the user.
Syntax
class name
{
name (arguments list)
{
}
}
According to the example there is class name that contains different type of arguments we will pass to the constructor
3) Multiple Constructor
Multiple Constructor will contain more than one constructor. Each constructor will contain different types of arguments.
Class gh
{
gh()
{
}
gh(arguments)
{
}
}
According to the syntax there is a class gh that contains two constructor one constructor contain no argument and another constructor contains two arguments.
4) Constructor with default arguments
Constructor with default arguments means that we will provide some argument with a constant value or we can say that we will pass a fixed value.
Syntax
Class gh
{
gh(int g=20)
{
}
}
According to the example there is a class gh that contains a constructor that contains one argument in which we have given a fixed value.
5) Copy Constructor
Copy constructor is a constructor in which one constructor will work as an object to another constructor. Copy constructor will play very important role when we want to use one constructor in another constructor.
6) Dynamic Constructor
Dynamic constructor is a constructor in which we will pass dynamic arguments to the constructor. In other word we can say that we will pass dynamic values to arguments.
Syntax
class yu
{
yu(dynamic arguments)
{
}
}
According to the example there is a class yu and there is dynamic arguments we pass in the constructor that will be associated with the constructor. In the summary form we can say that constructor will be used to initialize variables and constant that is required in the program.
Q What is mean by objects ? How these are created .Explain with the help of example
Ans :
As we know that object is an entity that contains properties and behavior associated with them. With the help of property we can identity the objects.
Objects can be created from the characteristics of class and different features associated with them. In other word we can say that objects can be created from the real life entity like name of any person and any thing name will be included in object.
Each object contains two parts inside it
(a) Object name
When we are providing the name to object the we have to be careful about the name of object. The following care we have to taken during providing the name to objects
1) Name of object should indicate the purpose of task
2) Two object name should be unique from each other
3) Two objects can have same properties.
(b) Value that object can store
1) what ever the value we will store in the objects should be according to the name of an object
2) Value that will be stored should be relevant enough to perform the purpose of the object
For Example
#include
class student
{
public:
int rollno;
char name[100];
char result[10];
};
void main()
{
student r;
cout<<"Enter the rollno of the student"<
cout<<"Enter the result of the student"<
}
According to this example there is a class student that contains three objects inside it that objects we can use to manipulate the class and different operation we can perform on the class.
When we are declaring the objects then we will use the following access mode.
1) public
public means that what ever the object we declared that can be easy to access from outside of the class .In other word we can say that public objects can used by another class.
2) Private
Private members are that members that are not easy to access by another class.Private member are accessible by the member of class and class that is inheriting the class
3) Protected
Protected object are that object which is accessible by another class member but the other class member should be to make the member of class.
Advantage of Objects
1) We can easily represent the object
2) We can see the actual functioning of objects or different objects exist in the world
3) Objects communicate with each other with the help of message passing between different objects
Q What are the important common features supported by Object Oriented languages ? Explain in details
Ans :
Object oriented language provides the following features to us.
1) Objects
2) Classes
3) Inheritance
4) Abstraction
5) Polymorphism
6) Message Passing
7) Encapsulation
8) Dynamic Binding
1) Objects
Object represents the basic run-time entity in an object-oriented system. object occupy space in memory that keeps its state and it will perform operation on them. When different objects are combined then it will make a class.
2) Classes
A class represents a possible set of objects.The object will contain attributes that will make the difference between different objects.
3) Inheritance
Inheritance means that we will inherit some feature from existing class.In other word we can say that we will use some objects that are available in previous class.
Inheritance can be classified into the following category
a) Simple Inheritance
b) Multipoint Inheritance
c) Multiple Inheritance
d) Hybrid Inheritance
4) Abstraction
Abstraction is an important features of OOPS in which we will describe the external behavior than internal behavior.
5) polymorphism
polymorphism means that we will use one function more than one time with different types of arguments. Polymorphism will reduce the coding that we have to perform again and again.
7) Message Passing
Two objects interacting with each other with the help of message passing between two objects Message Passing is the best way to make the communication.
8) Dynamic Binding
Dynamic binding means that we will bind the object not in static form but it is bounded in dynamic form. Dynamic binding will provide different features that will provide different types of flexibility of data acceptance.
Q What is database ? What qualities a database must processes to be an ideal database ?
Ans
Database is a collection of records there are different program available to manipulate them according to user requirement . Database should have the following characteristics
1) Inconsistency
When we will use database then inconsistency will be removed from the database.
For Example
There is one employee in the company who have been
Promoted from clerk to head clerk then salary of that employee will be increased then salary will be updated in database that updated database will be shifted to all client who are connected with central database. There will be no confusion between two clients who are connected with central database.
2) Sharing of data
When central database is used then data can be shared between clients computers which has been connected with each other..Sharing of data can be done with the help of backup concept of database.
For Example:
Suppose one client is making a particular application in a particular computer that can be shared with other client.
3) Security
When we use database then we can protect the database from illegal access of database. Security will be handled by the System administrator who will take care of each and every task is performed by the user.
For Example
One client who want to access a particular file from the database then system administrator will check rights of that use then using of file is allowed to that client
4) Auditing
Database can maintain the auditing of different users who log in the system and different task performed by them. Auditing will maintain all details about the user.
For Example
One client who log in the system in the at 10:30 and file manipulation will be performed by the client all details will be maintained in the log file.
5) Data Integrity
Data integrity means that data will be entered in the database will be accurate. In other word we can say that every user will get the accurate data.
For Example
Suppose one client enter the record with amount of 500Rs then other user will get the amount 500Rs.
6) Single time implementation
When we use database then we have to implement the rule at central database that rule will be used by every client who will make transaction with database.
For Example
We implement a rule on database that every employee age will be entered greater than 18 then every user enter the age of employee greater than 18.
7) Query Processing
We can perform query with database. Query is done by the user in the form of simple English syntax.
For Example
One client want to know about the employee whose name start with ‘l’ then client will make a query that query will move to database. Database will understand that query and return result back to client.
8) Conflict resolve
Database will handle the conflict that is arriving between different client request.
For Example
There are five client who are making interaction with database. One client is requesting about a particular file “abc.dat” the same is requested by another client then conflict will arrive. The System administrator will solve this problem according to the rights provided to clients.
9) Data Independence
Database will provide Data independence. Data Independence indicate that application and data both are separate utility. If any change is performed in data that does not effect application and changes
Performed in application does not change data.
For Example
We write a resume and copy that resume to pen drive that does not effect resume.
Q Differentiate between the following
1) Links and Associates
2) Public inheritance and private inheritance
3)SA/SD and Object Modeling
4) Multilevel inheritance and Multiple Inheritance
1) Links and Associates
Links Associates
1) It will show relation between Objects 1) It will show relation between classes
2) It will operate on single entity 2) It will work on group of entity
3)
4) Multilevel Inheritance and Multiple Inheritance
1) In Multilevel Inheritance one class inherit objects from another class and another class inherit objects from next another class. 1) In multiple inheritance multiple class inherit the objects from one class.
2)
According to the example Class A inherit the objects from Class B and Class B inherit the objects from Class C.
2)
According to the example class B,C,D inherit the objects from class A.
3)
Q What is method overriding ? when does it occur. Explain with the help of example
When a class inherits a base class, it receives all the base class’s public and protected mehtods and properties. However, it does not have to take everything it gets as is. The derived class can override any function to suit the needs of the derived class. In other words, you are not stuck with the functions you inherit. You can override them. Overwriting a function is not the same as overloading a function. When you overload a function it must have different parameters (either a different number or different types). When you override a function it should have the same parameters, but the actual code in the function will be different. The function declaration (the name, return type, and parameters) is called the interface; the actual code in the function is called the implementation. Thus, your interface will be the same when you override an inherited function, but its implementation will be the same.
For Example
class baseclass
{
public:
void testfunction();
};
void baseclass::testfunction()
{
cout << "Hey this is the base class!\n";
}
class childclass:public baseclass
{
public:
void testfunction();
};
void childclass::testfunction()
{
cout << "Hey this is in the child class!!\n";
}
According to the example there is one class that is baseclass and another is childclass. The baseclass contains one function that is testfunction and childclass contains the same function but child class overriding that function.
When it occurs
Overridding occurs when we want to use a particular function again and again in different classes.
Advantage
1) We does not required to compile the function
2) Coding will be saved
3) We can usa a particular function for different purpose in different classes.
4) When we want to perform the same operation that is done by the base class.
5) We can bound the clientclass to provide the arguments that has been given in parentclass
6) We can easily perform the modification in the method according to the requirement of the class.
Q what is JSD ? Explain this design in details along with its advantage and disadvantage
Ans.
Jackson structured development start with the consideration of real world. JSD model will describe the real world in terms of entities, actions and ordering of actions. A Jackson Structured Programming diagram is used to explain the inner workings of a program. At a glance they seem similar to algorithm flowcharts, but the likeness is only superficial. To understand a JSP diagram you must read it properly. With a JSP diagram each step on the same branch is performed top down - left to right.
JSD will diagram concepts to show the flow of control from one data to another data.
1) Action /Process
2) Selection
3) Iteration
4) Procedure
1) Action/Process
Action and process indicate that we will take proper action against the entity and process that we are performing in the program
Action is indicated by the following diagram
2) Selection
In this step we will take proper selection against the selection done by the user.
According to this diagram circle indicate that we will make a selection in different options available to us.
3) Iteration
In this diagram we will represent iteration of steps that we will take again and again to perform a specific task.
This diagram indicate that we will execute number of statements again and again according to the condition given by the user.
4) Procedure
In this diagram we will represent procedure of statements that will be executed once a procedure will be executed.
This diagram will indicate that we will make a bundle of statements that will be executed when we will perform a action on entity.
JSD will use six steps in structured programming
1) Entity Action Step
2) Entity Structure Step
3) Initial Model Step
4) Function Step
5) System Timing Step
6) Implementation Step
1) Entity Action Step
In this step we will decide what action will be taken by entity. Entity Action Step will ensure that what output will come when we will perform some task on them.
2) Entity Structure Step
In this step we will decide the structure of entity. The structure will include different entities inside it. Structure will include different types of data types and size of different variables we will use in the programming
3) Initial Model Step
In this step we will decide initial step that will be used to process the entire model. In this step we will decide memory we will provide to different objects we will include in the programming
4) Function step
In this step we will decide the function that entity will perform during the operation. This step will decide different arguments we can pass and different values return by the function.
5) System Timing Step
In this step we will decide the timing that is required for processing the entities. System timing will be decided by the statements that will be included in the program
7) Implementation step
In this step we will implement different entities to perform the task performed by the function or procedure that will be included in the program.
Q What do you mean by RDBMS ? Name two popular RDBMS available in the market.
Ans
RDBMS stands for Relational Database Management System. RDBMS is used to store different types of data which is provided by the user. RDBMS will ensure that data has been entered in the database will be accurate.
RDBMS provides the following advantages to us.
1) Data Integrity
2) Data Independence
3) No more Inconsistency
4) Security
5) Resource sharing
6) Simple to implement
7) Single time implementation
There are following software are available in the market.
4th Dimension
Adabas D
Alpha Five
Apache Derby
BlackRay
CA-Datacom
CSQL
CUBRID
Daffodil database
DataEase
Dataphor
DB-Fast
Derby aka Java DB
ElevateDB
EnterpriseDB
EffiProz
eXtremeDB
fastDB
FileMaker Pro
Firebird
Gladius DB
Greenplum
Orcle
H2
IBM DB2
SmallSQL
solidDB
SQLBase
SQLite
Sybase Adaptive Server Enterprise
Sybase Adaptive Server IQ
We are explaining two software that are very popular in the market
1) Oracle
Oracle takes a lead role because of some of the following reasons:
Oracle is used for almost all large application and one of the main applications in which oracle takes its major presence is banking. In fact ten of the world’s top 10 banks run Oracle applications this is because oracle offers a powerful combination of technology and comprehensive, pre-integrated business applications, including key functionality built specifically for banks.
Some similar databases like Sybase, SQL-Server one have facilities for using loops, conditions, arrays and so on in a program and also facilities like cursors and temp tables but all this would be used in a convoluted fashion which are very slow and resource consuming operations. The operations are not implemented as in Oracle which is efficient enough.
Also with the features available in oracle with the earlier versions in market the oracle company keeps upgrading and releasing new products into market, new versions releases which serves better than the earlier versions and thus the performance is improved much in later versions and thereby retaining the market growth and thus proves greater satisfaction to the customers using this technology. Thus the advantage of a higher version is that one would have more features and better capabilities.
For instance oracle 8i version has many new features which helped users namely like with oracle 8i one could run Java in the database, had features like new features on partitioning to support large database and so on. With the next version 9i oracle had these facilities maintained and had more new facilities added to it namely like new features added to help the DBA to handle change database configuration and so on.
Oracle is a database that responds very well with excellent performance in demanding environments. Oracle is a major database which along with its added features passes the ACID test, which is important in insuring the integrity of data. This is very important because data is the heart of any system in organization. A reliable and adequate database system has the following properties:
Atomicity:
That is Results of a transaction's execution are either all committed or all rolled back.
Consistency:
The database is transformed from one valid state to another valid state. Illegal transactions aren't allowed and, if an integrity constraint can't be satisfied then the transaction is rolled back.
Isolation:
The results of a transaction are invisible to other transactions until the transaction is complete thus increasing the security on data.
Durability:
Once committed (completed), the results of a transaction are permanent and survive future system and media failures and thus ensuring maintenance and protection of data.
All the above are well maintained by Oracle database.
The latest version oracle 10g has many features and one new feature is the introduction of recycle bin. This option when enabled could be used by users just like Windows recycle bin or Mac Trash. Dropped tables go "into" the recycle bin, and can be restored from the recycle bin.
One of the main advantage of oracle over other databases is in its recent version oracle has the concept of Flashback technology. That is we all know that data is the heart of any application or organization and thus this requires careful maintenance. But sometimes application outage can occur and mostly DBA claim the reasons for this as hardware failure and apart from this the reason would be human errors like accidental deletion of valuable data, deleting the wrong data, or dropping the wrong table. So it is very essential to take care of such situation and this is done in oracle's latest technology called flash introduced in its latest version. By Flash technology it helps in recovery by working just on the changed data. Thus Flashback provides an
• Efficient recovery from human errors
• Faster database recovery
• Helps in simplifying the management and administration processes
and so on.
solidDB
This software provides the better facility to handle the database perfectly.The Followin software contains the following features to us that why we use this software
1) Achieves Extreme Speed with In-Memory Database Technology
solidDB delivers extreme speed because it keeps data in main memory at all times rather than on disk. Applications can take advantage of its capability through standard ODBC, JDBC, SQL interfaces. solidDB works under the premise that all data to be accessed will be in main memory, all the time. Thus, it has data structures and access methods specifically designed for storing, searching, and processing data in main memory, with efficient concurrency control mechanisms. This has two performance advantages over conventional, disk-based databases. First, solidDB eliminates the need to transfer data blocks from disk to main memory. This is because any data requested by the application is already in main memory. Second, solidDB is faster than disk-based databases, even if the latter cache all data in main memory, since solidDB employs data structures and access methods that are optimized for main memory access.
2) Keeps Data Persistent and Recoverable
While solidDB works under the premise that all data is accessible in main memory, all the time, solidDB also writes updated data to disk, and uses checkpointing and transaction logging mechanisms so that the recoverability of the data is ensured.
3) Provides Extreme Availability
solidDB delivers extreme availability enabling applications to recover from system failures in less than a second providing the extreme data availability required by performance-critical applications. Using a two-node, hot-standby configuration, solidDB maintains copies of the data synchronized between two solidDB nodes.
4) Combines High Availability and Extreme Speed
solidDB can boost performance even further by providing a hot-standby configuration where read operations can be load-balanced across primary and hot-standby solidDB instances transparently to the application. To take advantage of load balancing, an application uses solidDB's ODBC or JDBC drivers that maintain only one logical connection to both primary and hot-standby solidDB instances. In this configuration, write transactions are automatically directed to the primary solidDB node, and read transactions can be directed either only to the hot-standby solidDB node, or load-balanced across primary and hot-standby solidDB instances, without application developers having to write code. Using load-balancing can yield up to a 100% performance improvement, while hot-standby configuration also provides high availability of solidDB nodes with subsecond failover in the event of a failure.
5) Balances Data Safety, Application Throughput and Recovery Time
solidDB offers several high availability configuration options that specify how primary and secondary database servers are synchronized, which can be selected at the system, session and transaction levels. This enables you to balance throughput, durability, and recovery time with unprecedented flexibility.
6) Lowers costs
The extreme speed and extreme availability of solidDB address the need for businesses to always keep data available and accessible, avoiding the costs associated with both planned and unplanned outages and delays. solidDB further reduces costs because it can be controlled by the application and run virtually unattended, letting businesses accelerate deployments and reduce administrative costs resulting in a lower total cost-of-ownership. Furthermore, because solidDB can run on commodity as well as best-of-breed hardware, it provides you with a variety of proven, cost-effective solutions.
Q Name any two object oriented languages.
There are many types of languages available in the market but the most popular languages are the following
1) Actor
2) Ada 95 (multi-purpose language)
3) BETA
4) C++
5) C#
6) Chrome
7) ChucK
8) Cobra
9) ColdFusion
10) Curl
11) DASL
1) C++
C++ is object oriented programming language that why it is used frequently with following reasons.
2) C#
1) 4th Dimension
2) Adabas D
3) Alpha Five
4) Apache Derby
5) BlackRay
6) CA-Datacom
7) CSQL
8) CUBRID
9) Daffodil database
10) DataEase
11) Dataphor
12) DB-Fast
13) Derby aka Java DB
14) ElevateDB
15) EnterpriseDB
16) EffiProz
17) eXtremeDB
18) fastDB
19) FileMaker Pro
20) Firebird
21) Gladius DB
22) Greenplum
23) H2
24) Helix database
25) HSQLDB
26) IBM DB2
27) WCE SQL Plus
28) IBM DB2 Express-C
29) Informix
30) Ingres
31) InterBase
32) InterSystems Caché
33) Kognitio
34) Linter
35) MaxDB
36) Mckoi SQL Database
37) Microsoft Access
38) Microsoft Jet Database Engine (part of Microsoft Access)
39) Microsoft SQL Server
40) Microsoft SQL Server Express
41) Microsoft Visual FoxPro
42) Mimer SQL
43) MonetDB
44) mSQL
45) MySQL
46) Netezza
47) NonStop SQL
48) Openbase
49) OpenLink Virtuoso (Open Source Edition)
50) OpenLink Virtuoso Universal Server
51) Oracle
52) Oracle Rdb for OpenVMS
53) Pervasive
54) PostgreSQL
55) Progress 4GL
56) RDM Embedded
57) RDM Server
58) The SAS system
59) Sav Zigzag
60) ScimoreDB
61) SmallSQL
62) solidDB
63) SQLBase
64) SQLite
65) Sybase Adaptive Server Enterprise
66) Sybase Adaptive Server IQ
67) Sybase SQL Anywhere (formerly known as Sybase Adaptive Server Anywhere and Watcom SQL)
68) tdbengine
69) Teradata
70) TimesTen
71) txtSQL
72) Valentina (Database)
73) Vertica
74) VistaDB
75) VMDS
76) XSPRADA

No comments:
Post a Comment