Monday, May 10, 2010

SQL Vs PL-SQL : Actual difference

.
SQL is a data oriented language for selecting and manipulating sets of data. PL/SQL is a procedural language to create applications.

Normally, you don't have a "SQL application". You normally have an application that uses SQL and a relational database on the back-end. PL/SQL can be the application language just like Java or PHP can. SQL may be the source of data for your screens, web pages and reports. PL/SQL might be the language you use to build, format and display those screens, web pages and reports.

Think of it like this: The code that makes your program function is PL/SQL. The code that manipulates the data is SQL DML. The code that creates stored database objects is SQL DDL. DDL compiles the code that is written in PL/SQL. PL/SQL may call SQL to perform data manipulation. The commands that format the output of a tool are not related to the SQL standard or to PL/SQL.

-- SQL is a data oriented language for selecting and manipulating sets of data.
-- PL/SQL is a procedural language to create applications.

-- PL/SQL can be the application language just like Java or PHP can. PL/SQL might be the language we use to build, format and display those screens, web pages and reports.
-- SQL may be the source of data for our screens, web pages and reports.

-- SQL is executed one statement at a time.
-- PL/SQL is executed as a block of code.

-- SQL tells the database what to do (declarative), not how to do it.
-- In contrast, PL/SQL tell the database how to do things (procedural).

-- SQL is used to code queries, DML and DDL statements.
-- PL/SQL is used to code program blocks, triggers, functions, procedures and packages.

-- We can embed SQL in a PL/SQL program
-- but we cannot embed PL/SQL within a SQL statement.

-- SQL is a language that is used by relational database technologies such as Oracle, Microsoft Access, and Sybase etc.
-- PL/SQL is commonly used to write data-centric programs to manipulate data in an Oracle database. PL/SQL language includes object oriented programming techniques such as encapsulation, function overloading, and information hiding.

Saturday, May 8, 2010

Basics of arrays in PERL

.

Defining an array:

@Myarray = qw(1st-Element 2nd-Element 3rd-Element);

OR

$myarray[0] = "1st-Element";

$myarray[1] = "2nd-Element";

$myarray[2] = "3rd-Element";

$#array returns the number of elements in an array

for (sort @myarray)

{ print $_ }

Friday, May 7, 2010

WHAT IS CPAN: Comprehensive Perl Archive Network

There are some separate modules, usually consisting of a .pm and/or a .pll file and available from CPAN (comprehensive Perl Archive network).


CPAN, the Comprehensive Perl Archive Network, is an archive of over 18000 modules of software written in Perl. It has a presence on the World Wide Web at www.cpan.org and is mirrored worldwide on more than 220 locations. CPAN can denote either the archive network itself, or the Perl program that acts as an interface to the network and as an automated software installer (somewhat like a package manager). Most software on CPAN is free and open source software.

CLICK HERE to know more.... 

perl -MCPAN -e shell 

Wednesday, May 5, 2010

Some Basic definitions when we talk about "Software Testing"

These are also called as ‘Software Quality Factors’

1.      Correctness: Extent to which a program satisfies its specifications and fulfills the user’s main objectives.

2.      Reliability: Extent to which a program can be expected to perform its intended function with required precision.

3.      Efficiency: The amount of computing resources and code required by a program to perform a function.

4.      Integrity: Extent to which access to software or data by unauthorized persons can be controlled.

5.      Usability: Its parameters for measuring extent of ease to use the software: Efforts required learning, operating, preparing input, and interpreting output of a program.

6.      Maintainability: How easy or difficult is to maintain the software under test : Efforts required locating and fixing an error in an operational program.

7.      Testability: Effort required testing a program to ensure that it performs its intended function.

8.      Flexibility: How much flexible is a software for new additions or changes : Effort required modifying an operational program.

9.      Portability: How much effort is required if a particular setup needs to be moved to another environment : Effort required transferring  software from one configuration to another.

10 Reusability: Extent to which a program can be used in other applications – related to the packaging and scope of the functions that programs perform.

11  Interoperability: Effort required to couple one system with another.