Tuesday, November 30, 2010

ORACLE OBJECTS AND OBJECT TYPES

Oracle object types are user-defined data types that make it possible to model complex real-world entities such as customers and purchase orders as unitary entities --"objects"--in the database.

Oracle object technology is a layer of abstraction built on Oracle's relational technology. New object types can be created from any built-in database types and/or any previously created object types, object references, and collection types. Meta-data for user-defined types is stored in a schema that is available to SQL, PL/SQL, Java, and other published interfaces.

Object types and related object-oriented features such as variable-length arrays and nested tables provide higher-level ways to organize and access data in the database. Underneath the object layer, data is still stored in columns and tables, but you are able to work with the data in terms of the real-world entities--customers and purchase orders, for example--that make the data meaningful. Instead of thinking in terms of columns and tables when you query the database, you can simply select a customer.

For example you use address which comprises of streetno, locality, city, pin, country, in many tables. You define these columns in each table separately like


     Create table emp (empno number(5),Name varchar2(20),Sal number(10,2),Streetno varchar2(20),Locality varchar2(20),City varchar2(20),Pin varchar2(7),Country varchar2(20));

     Create table customers (custcode number(5),Name varchar2(20),Bal number(10,2),Streetno varchar2(20),Locality varchar2(20),City varchar2(20),Pin varchar2(7),Country varchar2(20));

Instead of defining address columns again and again in each table, you can define an address datatype and then use this user defined datatype in all tables.

Defining an Object Type


The following example create an object type

     Create type address as object ( Streetno varchar2(20),Locality varchar2(20),City varchar2(20),Pin varchar2(7),Country varchar2(20));

Now you can use this datatype while defining tables emp and customer like this

    Create table emp (empno number(5),Name varchar2(20),Sal number(10,2),Emp_addr address);

    Create table customers (custcode number(5),Name varchar2(20),Bal number(10,2),Cust_addr address);

Inserting Records in tables with object datatypes.
To insert record into emp table you have to give the following statement.
    Insert into emp values (101,’Sami’,2000,address(‘A.C.Gaurds Road’,’A.C.Gaurds’,’Hyd’,’500004’,’India’);

To update city of employee number 101 you have to give the following update statement
Update emp e set e.emp_addr.city=’Bombay’ where e.empno=101;

To select rows from emp table give the following statement
Select * from emp;
To select only empno,name and city give the following statement
Select e.empno, e.name, e.emp_addr.city from emp e;

My Favourite Game


Monday, November 29, 2010

DML, DCL, DDL, TCL Statements

SQL commands are divided into categories like DML (Data Manipulation language), DDL (Data definition language), TCL (Tranction control language) and DCL (Data control language). Here is a list of SQL commands.
1. DML COMMANDS
  • INSERT
  • UPDATE
  • SELECT
  • DELETE
2.DDL COMMANDS
  • CREATE
  • ALTER
  • DROP 
3.TCL COMMANDS 
  • COMMIT
  •  ROLLBACK
4.DCL COMMANDS 
  • GRANT
  • REVOKE
-------------------------------------------------------------
 
DML
DML is abbreviation of Data Manipulation Language. It is used to retrieve, store, modify, delete, insert and update data in database.
DDL commands used to create the objects, DML commands used to manipulate the objects. DML commands are INSERT–This command is used to insert the records into table, UPDATE–This command is used to update the record which is already exisiting in the table, DELETE– This command is used to delete the record which is already existing the table. It is deletes only records not the structure.
Examples: SELECT, UPDATE, INSERT statements
DDL
DDL is abbreviation of Data Definition Language. It is used to create and modify the structure of database objects in database.
DDL is used to create the structure of the table. DDL commands are CREATE —Used to create any objects(Table,View,Trigger,Stored procedure) in the database. ALTER – Used to modify the objects in the database.DROP –this command used to drop the objects with the structure.TRUNCATE–This command also used to delete the objects. RENAME–used to modify the object name in the data base.

Examples: CREATE, ALTER, DROP statements
DCL
DCL is abbreviation of Data Control Language. It is used to create roles, permissions, and referential integrity as well it is used to control access to database by securing it.

DCL commands used to security purpose.
GRANT–this command used to give the pemissons to the paricular Data.
REVOKE–This command used to release the permissions, which already given to any user.
Examples: GRANT, REVOKE statements
TCL
TCL is abbreviation of Transactional Control Language. It is used to manage different transactions occurring within a database.
Examples: COMMIT, ROLLBACK statements

Wednesday, November 24, 2010

Single Line Functions

The single line function work on individual columns from individual rows and return one result per row.


The single line functions take different types of arguments, work on data item from each row, and return one value back for each row.

The different single line functions are:

 Numeric functions

 Date functions

 Character functions

 Conversion functions

NUMERIC FUNCTION:

ABSOULTE:

Abs() function is used to display the absolute value of a specified value, (i.e) negative into positive value.

COS:

Cos() function is used to find the cosine value.

LOG:

Log () function is used to find the logarithmic value.

POWER:

power() function is used to find the power value of specified value.

SQRT:

sqrt() function is used to find the square root value.

CEIL:

ceil() function is used to display round up value.

FLOOR:

floor() function is used to display the value truncating the decimal point value.



SIGN:

sign() function is used to display the first element.

MOD:

mod() function is used to calculate the modulus value.

TAN:

tan() function is used to find the tangent value.

TRUNCATE:

trun() function is used to truncate the floating point value and display.

DATE FUNCTION:

SYSDATE:

It is used to display the current date.

ADD FUNCTION:

It is used to add the months to the current date.

LAST_DAY:

It is used to display the last day of the current date or given date.

NEXT_DAY:

It is used to display the next day of the specified day. It specifies the date of the next day.

ROUND:

It is used to display the current date.

GREATEST:

It is used to display the end of the month.

CHARACTER FUNCTION:

The character function are used to manipulate in the characters.

INITCAP:

It is used to display the initial letter in capital letter, if it small.

UPPER:

It is used to display the string in upper case, that it is in lower case .

LOWER:

It is used to display the string in lower case, if it is upper case.

LENGTH:

It is used to find the length of the string. It display the number of strings(characters).

REPLACE:

It is used to replace the string with another string. It can also be used to replace the name.

LPAD:

It is used to display the special character with the specified character and number of character in left.

RPAD:

It is used to display the special character with the specified character and number of character in right.

LTRIM:

Ltrim() function is used to truncate the space in the left. It displays the string truncating the left space if any.

RTRIM:

It is same as ltrim, it display the string truncating the right space.

SUBSTRING:

The function substr() is used to display the string that specified with number to display.

TRANSULATE:

Transulate() function is used to transulate the character into another character.











CONVERSION FUNCTION:

TO_CHAR:

It is used to convert the system date into character. Specify the date format in character as dd month YYYY, it displays, in month as character and the date and year in numerics.

TO_DATE:

It is used to convert the format into character. It displays the month in character, if specified.

TO_NUMBER:

It is used to display the number. It can also add the two numbers.

TRUNC:

It is used to select the user id, it displays the user number.



GROUP FUNCTIONS:

NO NAME

1 Aaa

2 Bbb

3 Ccc

4 Ddd

MIN:

The function min() is used to display the minimum value. In the table, min(no), 1 is selected.

MAX:

The function max()is used to display the maximum value. In the table, max(no), 4 is selected.

SUM:

The sum() function is used to display the sum. In this table, sum (0), displays the sum,10.

AVG:

The function is used to calculate the average, displays the average. In the above table it displays the average,2.5.

COUNT:

It displays the number of records. It is specified with the asterisk(*) to count the number of records. In the above table displays 4.

Structure of DBMS

Structure of DBMS


For more details Click here

Monday, November 15, 2010

History of Database Systems

A Brief History of Database Systems

Data are raw facts that constitute building blocks of information. Database is a collection of information and a means to manipulate data in a useful way, which must provide proper storage for large amounts of data, easy and fast access and facilitate the processing of data. Database Management System (DBMS) is a set of software that is used to define, store, manipulate and control the data in a database. From pre-stage flat-file system, to relational and object-relational systems, database technology has gone through several generations and its 40 years history.

  • 1968 File-Based: predecessor of database, Data maintained in a flat file.  Processing characteristics determined by common use of magnetic tape medium.
  • 1968-1980 Era of non-relational database: A database provides integrated and structured collection of stored operational data which can be used or shared by application systems.  Prominent hierarchical database model was IBM’s first DBMS called IMS. Prominent network database model was CODASYL DBTG model; IDMS was the most popular network DBMS.
  • 1970-present Era of relational database and Database Management System (DBMS): Based on relational calculus, shared collection of logically related data and a description of this data, designed to meet the information needs of an organization; System catalog/metadata provides description of data to enable program-data independence; logically related data comprises entities, attributes, and relationships of an organization’s information. Data abstraction allows view level, a way of presenting data to a group of users and logical level, how data is understood to be when writing queries.
Example Database Systems are:


  •  Microsoft Corp- SQL Server
  • Oracle- Oracle 9i
  • IBM – IMS/DB, DB2

 For More Details refer here

Saturday, September 18, 2010

Steps for Interview

  1. Learn about yourself.
  2. Review your resume.
  3. Find our where you can goto learn about your topic (use search engines for sites and buy needed books).
  4. Learn about organization.
  5. Prepare Interview questions ahead of time (Prepare answers for common Questions).
  6. Rehearse your delivery with known persons
  7. Make a good immersion during the interview.
  8. Stick to your Message.
  9. Know your Weakness.
  10. Practice positive visualization.
  11. Focus on your Abilities.
These are the some steps that can help an fresher to get through the interview, these points were delivered by an Alumni of Computer Applications, KSR College of Engineering with Final MCA Students during the Alumni Interaction Event.

Top HR Interview Questions

The following are the Top HR Interview Questions
  1. Tell me about yourself  ?
  2. What are your greatest strengths ?
  3. What are your greatest weakness ?
  4. Tell me about something you did – or failed to do – that you now feel a little ashamed of ?
  5. Why are you leaving (or did you leave) this position ?
  6. The "Silent Treatment"
  7. Why should I hire you?
  8. Aren’t you overqualified for this position?
  9. Where do you see yourself five years from now?
  10. Describe your ideal company, location and job.
  11. Why do you want to work at our company?
  12. What are your career options right now?
  13. Why have you been out of work so long ?    
     
      Like nearly 64 Questions with answers visit : HR Interview Questions
 Have a Wonderfull Day.

Tuesday, July 27, 2010

C# Classes and objects

For Class and Objects Refer the following websites links:

1. devarticle website
2.  C# station
3. Aspfree
4.  Kirupa
5. Video 1
6. Video 2
7. Informit

Learn and Shine....!

C# program for Structure and Enumeration


using System;
using System.Collections.Generic;
using System.Text;

namespace structenumexample
{
class Program
{
enum Sem
{
Nil=0, First = 1, Second= 2,Third = 3, Fourth = 4, Fifth = 5, Sixth = 6
}
struct stud
{
int regno, m1, m2, m3, m4, m5, tot;
string name, result, perf;
float avg;
Sem sem;

public stud(int regno, int m1, int m2, int m3, int m4, int m5,string name,int sem)
{
this.regno = regno;
this.m1 = m1;
this.m2 = m2;
this.m3 = m3;
this.m4 = m4;
this.m5 = m5;
this.name = name;
this.avg = 0;
this.tot = 0;
this.result = "";
this.perf = "";
this.sem = (Sem) sem;
}

public void proce()
{
tot = m1 + m2 + m3 + m4+m5;
avg = tot / 5;
if ((m1 >= 40) && (m2 >= 40) && (m3 >= 40) && (m4 >= 40) && (m5 >= 40))
{
result = "PASS";
if (avg > 75)
perf = "Distinction";
else if (avg > 60)
perf = "First";
else if (avg > 50)
perf = "Second";
else
perf = "Third";
}
else
{
result = "FAIL";
perf = "Nil";
}

}
public void showres()
{
System.Console.WriteLine(" {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11}", regno, name, sem,m1, m2, m3, m4, m5, tot, avg, result, perf);
}
}
public static void Main(string[] args)
{
int regno, m1, m2, m3, m4, m5;
string name;
int sem;
stud[] st = new stud[10];
int i;
for (i = 0; i < 10; i++)
{
Console.WriteLine("Enter the Regno of the student");
regno = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter the Name of the student");
name = Console.ReadLine();
Console.WriteLine("Enter the Semester of the student (1/2/3/4/5/6)");
sem = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter the m1 of the student");
m1 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter the m2 of the student");
m2 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter the m3 of the student");
m3 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter the m4 of the student");
m4 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter the m5 of the student");
m5 = Convert.ToInt32(Console.ReadLine());
st[i] = new stud(regno,m1,m2,m3,m4,m5,name,sem);
}
for (i = 0; i < 10; i++)
{
st[i].proce();
st[i].showres();
}
Console.ReadLine();
}
}
}

The above program is the example for the Structure and Enumeration usage in C#.

Thursday, July 8, 2010

Check your self in Electroal List 2010

Go to the WebSite by clicking the Election Voters List 2010

(If needed install  all the tamil fonts by selecting download tamil fonts in the same page, and then refresh)
1. Go through the above link and select your district (Namakal)
2. Select the constituency like Kumarapalayam, Pallipalayam, Tiruchengode etc.
3. Then click submit
4. Polling stations of the selected constituency will be displayed
5. Then click the needed Polling Station
6. You will get the voters list in pdf format

View the List and Identify the Whether your name is there or not.

Wednesday, July 7, 2010

Tips for speeding up Windows XP performance

Five tips for speeding up Windows XP performance

1: Access the Performance options
2: Change Visual Effects settings
3: Change Processor Scheduling settings
4: Change Memory Usage settings
5: Change Virtual Memory settings

For More details visit : Click here

Tuesday, July 6, 2010

C# - Iterative Statements

Iterative statements repeat a particular statement block until a condition has been satisfied.

Following types of iterative statements are there in C#.

  • While
  • Do While
  • For
  • Foreach

From the above the while, for, foreach are the statements under the category of entry controlled looping. and the statement do while statement falls under the exit controlled looping.

The major difference between entry and exit controlled looping is the position where the condition is evaluated. Also in entry controlled looping, initially the condition is false the iterative block will not be executed even once, but in exit controlled looping, even if the condition is false, the iterative block is executed once and then only the condition is evaluated.

While Statement
The statement block of while statement is executed while the boolean expression is true. It may execute zero or more times. If the boolean expression is false initially, the statement block is not executed.

The while statement is used to iterate while the condition evaluates to true.

Do While Statement

Do While is almost similar to While statement except it validate its boolean expression after the statement block. It guranttees that the statement block shall run atleast once for sure. Further iterations of the statement block continues while the boolean expression is true.

For Statement
The For statement iterate a code block until a specified condition is reached similar to while statement. The only difference of for statement has over while statement is that for statement has its own built-in syntax for intiliazing, testing, and incrementing/decrementing (3 clauses) the value of a counter.
The first clause is the initialize clause in which the loop iterators are declared.
The second clause is the boolean expression that must evaluate to a boolean type and the statement block is repeated until this expression is false.
The third clause is to increment/decrement the value that is executed after each iteration.
All three clauses must be separated by a semicolon (;) and are optional. For statement block is repeated zero or more times based on the boolean expression validation (second clause).

ForEach Statement
ForEach statement is desiged to loop through a similar type of items in a collection. As each element is enumerated, the identifier is assigned the new element, and the statement block is repeated. The scope of the identifier is within the foreach statement block. The identifier must be of the same type extracted from the collection and is read-only.

for more details refer : Help 1 Help 2 Help 3 Help 4

RIA - Rich Internet Applications

Rich Internet applications (RIAs) offer a rich, engaging experience that improves user satisfaction and increases productivity. Using the broad reach of the Internet, RIAs can be deployed across browsers and desktops.

Benefits of RIAs
RIAs offer organizations a proven, cost-effective way to deliver modern applications with real business benefits:
  • Offer users a richer, more engaging experience.
  • Keep pace with users' rising expectations.
  • Increase customer loyalty and generate higher profits.
  • Leverage existing personnel, processes, and infrastructure.
Visit the for the collection RIA related materials : RIA Material

C# interview Questions and Answers

C# interview Questions and Answers

  1. What’s the advantage of using System.Text.StringBuilder over System.String?
  2. Can you store multiple data types in System.Array?
  3. What’s the difference between the System.Array.CopyTo() and System.Array.Clone()?
  4. How can you sort the elements of the array in descending order?
  5. What’s the .NET datatype that allows the retrieval of data by a unique key?
For more questions with answers visit : http://www.techinterviews.com/c-sharp-interview-questions-and-answers

Monday, July 5, 2010

Teaching Computers To Recognize Objects

http://www.sciencedaily.com/releases/2009/06/090601090029.htm

Recognising objects and groups of objects is something we humans take for granted. For computers, this is far from straightforward. A European project has come up with novel solutions to this conundrum.

Nearest Neighbor

http://www.codeproject.com/KB/recipes/K_nearest_neighbor.aspx

http://www.codeproject.com/KB/recipes/Quantitative_Distances.aspx

C# - An Introduction

C# (pronounced C Sharp). C# is designed to be a simple, modern, general-purpose, object-oriented programming language, borrowing key concepts from several other languages, most notably Java.

C# could theoretically be compiled to machine code, but in real life, it's always used in combination with the .NET framework. Therefore, applications written in C#, requires the .NET framework to be installed on the computer running the application. While the .NET framework makes it possible to use a wide range of languages, C# is sometimes referred to as THE .NET language, perhaps because it was designed together with the framework.

C# is an Object Oriented language and does not offer global variables or functions. Everything is wrapped in classes, even simple types like int and string, which inherits from the System.Object class.
C# can be written with any text editor, like Windows Notepad, and then compiled with the C# Command line compiler, csc.exe, which comes with the .NET framework.
simple C# program looks likes as follows
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, world!");
Console.ReadLine();
}
}
for more details refer : http://csharp.net-tutorials.com/

Wednesday, February 24, 2010

6 Biggest Pet Peeves of Interviewers

Getting an interview is a really big deal. It means that you have achieved a level of confidence with your resume and cover letter and have made it to the next steps of the hiring equation. This is something that you should be proud of; this is also something you should take very, very seriously. The interview presents a lot of opportunities to shine, but it also presents plenty of ways to disappoint a principal and hiring team and lose the chance at a job. 
 


Have you ever wondered what things don’t just annoy hiring teams but actually make them cringe in frustration? Well, wonder no more! Monster did the research for you. We sat down with real-world hiring managers and found out their biggest interview pet peeves, so you won’t have to find out the hard way.


For More details
Thanks to The Apple.

Friday, December 18, 2009

HTML STandards

HTML specifications and the related standards is available at the following link

http://www.w3.org/standards/techs/html#w3c_all


Visit this and learn it.

Monday, June 15, 2009

Comprehensive viva-voce என்à®±ால் என்ன?

Part-II Comprehensive viva-voce for the Ph.D ச்சொலர்ஸ்

  1. Such of the candidates who have successfully completed Part-I will have to take a comprehensive viva-voce within one year of completing Part-I. However, the University may allow a further period of six months.
  2. Comprehensive viva-voce will consist of a presentation by the candidate on the topic of his/her research, which includes the work done by him/ her till date and work proposed. Viva voce will be conducted by a committee consisting of Guide/s and two experts in the field appointed by the University from amongst a panel of six examiners recommended by the Chairman of concerned BOS in consultation with the Guide.
  3. The date of comprehensive viva-voce will be fixed by the University normally with 8 weeks of intimation from the Guide of readiness of the candidate.
  4. The Committee shall send a recommendation regarding the outcome of the viva-voce. The recommended candidates will continue their research. In case a candidate is not recommended, the committee will indicate the specific areas in which the candidate needs strengthening of his/her knowledge and he/she will appear for comprehensive viva­voce once again within six months of his/her taking the first viva-voce. In the event of the committee not recommending even at the second attempt, the registration of the candidate stands cancelled.

Sunday, June 14, 2009

இன்டெல்'ச ச்மல்லேச்ட் ப்à®°ோசெச்சொà®°்

தி Intel® Atom™ processor is இன்டெல் 's smallest processor, built with the world's smallest transistors and manufactured on இன்டெல் 's industry-leading 45nm Hi-k Metal Gate technology. தி இன்டெல் Atom processor was purpose-built for simple, affordable, netbooks and nettops.
இன்டெல் Atom processor-based netbooks and nettops offer both an easy-to-use mobile device with simple interfaces and targeted performance for a good online experience. They are rugged and compact in design, and offer the freedom and flexibility of wireless connectivity¹.
Great for Internet, these devices are an affordable option for education, photo and video viewing, social networking, voice over IP, e-mail, messaging, browsing, and numerous other Internet activities and basic applications.

Sunday, June 7, 2009

History of Java

Java has changed our world . . . and our expectations..
Today, with technology such a part of our daily lives, we take it for granted that we can be connected and access applications and content anywhere, anytime. Because of Java, we expect digital devices to be smarter, more functional, and way more entertaining.
In the early 90s, extending the power of network computing to the activities of everyday life was a radical vision. In 1991, a small group of Sun engineers called the "Green Team" believed that the next wave in computing was the union of digital consumer devices and computers. Led by James Gosling, the team worked around the clock and created the programming language that would revolutionize our world – Java.
The Green Team demonstrated their new language with an interactive, handheld home-entertainment controller that was originally targeted at the digital cable television industry. Unfortunately, the concept was much too advanced for the them at the time. But it was just right for the Internet, which was just starting to take off. In 1995, the team announced that the Netscape Navigator Internet browser would incorporate Java technology.
Today, Java not only permeates the Internet, but also is the invisible force behind many of the applications and devises that power our day-to-day lives. From mobile phones to handheld devises, games and navigation systems to e-business solutions, Java is everywhere!

For Timeline of Java refer Timeline
Taken from http://www.java.com/, Thanks.

Thursday, June 4, 2009

The 10 faces of computer malware

This summary is not available. Please click here to view the post.

15 Toughest Interview Questions

15 Toughest Interview Questions


  1. Why do you want to work in this industry?
  2. Tell us about yourself.
  3. What do you think of your previous boss?
  4. Why are you leaving your current role?
  5. Where do you see yourself in five years?
  6. What’s your greatest weakness?
  7. What salary are you looking for?
  8. Why should I hire you?
  9. What is your greatest failure, and what did you learn from it?
  10. How do you explain your gap in employment?
  11. When were you most satisfied in your job?
  12. What did you like least about your last job?
  13. Describe a time when you did not get along with a co-worker.
  14. What motivates you?
  15. How would your friends describe you?
For answers visit ANSWERS

Thanks for apple.com

Saturday, May 30, 2009

How do I create a Windows shortcut key?

How do I create a Windows shortcut key?
Solution:

Create a shortcut

  1. Open the folder or directory that contains the program you wish to create a shortcut for.
  2. Right-click on the program and click "Create Shortcut".
  3. This will create a shortcut named "Shortcut to " in the directory you are in. If you wish to rename this shortcut, right-click the file and click rename.
  4. Once the above steps have been completed, you can copy or cut this shortcut and paste it anywhere to execute this program.

Assign shortcut key to that Windows shortcut

Once the shortcut has been created to assign a shortcut key to that Windows shortcut follow the below steps.

  1. Right-click the shortcut and click Properties.
  2. Click the Shortcut tab.
  3. Click in the Shortcut key box and press a letter. For example, if you press "p" the shortcut key will automatically be made Ctrl + Alt + P. Which means if saved when pressing Ctrl and Alt and "P" all at the same time will run that shortcut.
Your Comments are Welcomed....!

Basic PC Shortcut Keys

Visit the Following for the Basic PC Shortcut Keys.
http://rmtechtutor.blogspot.com/2009/05/basic-pc-shortcut-keys.html

Tuesday, January 16, 2007

Virus.....?

A program or piece of code that is loaded onto your computer without your knowledge and runs against your wishes. Viruses can also replicate themselves. All computer viruses are manmade. A simple virus that can make a copy of itself over and over again is relatively easy to produce. Even such a simple virus is dangerous because it will quickly use all available memory and bring the system to a halt. An even more dangerous type of virus is one capable of transmitting itself across networks and bypassing security systems.

Since 1987, when a virus infected ARPANET, a large network used by the Defense Department and many universities, many antivirus programs have become available. These programs periodically check your computer system for the best-known types of viruses.

Some people distinguish between general viruses and worms. A worm is a special type of virus that can replicate itself and use memory, but cannot attach itself to other programs.

Also see The Difference Between a Virus, Worm and Trojan Horse in the Did You Know? section of Webopedia.