12 August, 2011
HTML:- Get Browser Closed Event
script type="text/javascript"
function closeEditorWarning()
{
return 'Hey, What r u Doing ? Are you sure?'
}
window.onbeforeunload = closeEditorWarning;
11 August, 2011
Java :- How to Logout/Signout in Java
Many Questions..
how to disable back button of the browser after logout?
Many Problems & questions I found when related to logout/signout .After signout/logout the browser
Back button is working and a user can go inside or previous page without again login.Once you logout/signout ,i.e. you cannot go to your working page without once again new login.But , there was
a problem after Logout/Signout the Back button is working.To avoid this for implementing proper logout/signout I solve this....
Steps:-
1. set the Session to Null (Do not invalidate the session if the jsp use other session including Login)
session.setAttribute("facultyList",null);
2. Set the necessary Header to Every Jsp having Logout/Signout Link
//Forces caches to obtain a new copy of the page from the origin server
response.setHeader("Cache-Control", "no-cache");
//Directs caches not to store the page under any circumstance
response.setHeader("Cache-Control", "no-store");
//Causes the proxy cache to see the page as "state"
response.setDateHeader("Expires", 0);
//HTTP 1.0 backward compatibility
response.setHeader("Pragma", "no-cache");
3. Check the session (Username) in jsp ,if null the redirect to Login Page.
try{
mybean=(List)session.getAttribute("facultyList");
}catch(Exception ex){}
if(mybean==null){response.sendRedirect("index.jsp");}
else{
//Do normal }
Now it will work . Enjoy and Follow Me.
10 August, 2011
Java :- Sending Data to Servlet From JSP
1. A Jsp File
2. Deployment Descriptor (web.xml)
3. A Servlet File (Normal Java File)
Jsp File (index.jsp)
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
Servlet File (test1.java)
Note : Here doGet/doPost/service method can be used.But I used here doGet(),becacuse the form action method is GET in index.jsp. So , I used doGet() in this example. But service method can use for both POST/GET method .But you can use any of these.
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String name=request.getParameter("txtname");
out
.println("");
out.println("");
out.println("
out.print("
Hi I am
");out.print("
"+name+"
");out.println(" ");
out.println("");
out.flush();
out.close();
}
Deployment Descriptor (Web.xml)
Note: In web.xml url-pattern is the path for browser ,so any name can be used (not /test1). we need
This is a simple Example for Communicate a servlet from jsp by passing a value Name or any Data.Enjoy..............the flavor of JAVA.
Posted By:- javadevelopersguide
Follow :- javadevelopersguide.blogspot.com
Java :- Setting Heap Size in Eclipse / My Eclipse
Heap memory related error java.lang.OutOfMemoryError.
What needs to be done here basically is to increase the jvm heap size. So for increasing the JVM Heap Size of Tomcat in Eclipse we have to set few VM arguments of the tomcat.
1. Open the Server tab in Eclipse and double click the Tomcat server to open Server Configuration.
1 | -Xms64m -Xmx256m |
Java :- Heap Size Error (JAVA )
//Error java.lang.OutOfMemoryError: Java heap space
Answer:-
Some times there may be no space for running the java program.At that time
programmer should increase the size of Heap area of JVM or Web Server.
For Increase the heap Size:
For a Run a Java Program Run with:- java -Xms65m -Xmx512 yourJavaFile
For run with Tomcat set the Environment Variable :- set JAVA_OPTS="-Xms256m -Xmx1024m"
Here
-Xms
-Xmx
-Xss
23 July, 2011
Oracle >> How to Lock/Unlock a Oracle user Account
Mostly there are 2 ways by we can Lock/Unlock the Oracle user Account.
1. By using GUI InterFace
=> Then Provide the user Id & Password
=> Unlock/Lock
2. By using CUI InterFace(Command Line)
Below 2 statements will help you to lock or unlock Oracle database user accounts. SQL> ALTER USER username ACCOUNT LOCK; SQL> ALTER USER username ACCOUNT UNLOCK;
MySQL LIMIT is Not working
I got question that LIMIT is not working properly,but actually as per the manual kit of mysql LIMIT work like below :
The first parameter indicates the starting record (first record is 0). The second parameter is the number of records to return, NOT the last record to return.
LIMIT 0, 10
This will return 10 records starting at record 0 (i.e. 0 - 9)
LIMIT 10, 20
This will return 20 records starting at record 10 (i.e. 10 - 29)
LIMIT 10, 10
This will return the 10 records starting at record 10 ( 10 - 19).
Example :--
select * from dbName.emp limit 10,10;
Posted By:-javadevelopersguide
Follow Link-http://javadevelopersguide.blogspot.com
22 July, 2011
MYSQL ->> Use of LIMIT keyword
Sometimes Normally it would prefer to do a full table scan.
If you use
LIMITwithrow_countORDER BY, MySQL ends the sorting as soon as it has found the firstrow_countrows of the sorted result, rather than sorting the entire result. If ordering is done by using an index, this is very fast.When combining
LIMITwithrow_countDISTINCT, MySQL stops as soon as it findsrow_countunique rows.In some cases, a
GROUP BYcan be resolved by reading the key in order (or doing a sort on the key) and then calculating summaries until the key value changes. In this case,LIMITdoes not calculate any unnecessaryrow_countGROUP BYvalues.As soon as MySQL has sent the required number of rows to the client, it aborts the query unless you are using SQL_CALC_FOUND_ROWS.
- LIMIT 0 quickly returns an empty set. This can be useful for checking the validity of a query. When using one of the MySQL APIs, it can also be employed for obtaining the types of the result columns. (This trick does not work in the MySQL Monitor (the mysql program), which merely displays Empty set in such cases; you should instead use SHOW COLUMNS or DESCRIBE for this purpose.)
When the server uses temporary tables to resolve the query, it uses the
LIMITclause to calculate how much space is required.row_count
Example :-
select * from dbName.emp limit 10;
The above query retrive only 10 record from emp table.But some times we need interval type of record such as:- 'emp' table has 100 record but , Every time we need 10 record at that time the query like below :
select * from dbName.emp limit 0,10;
select * from dbName.emp limit 10,10;
...
..
..
..
..
Like this.
Case Studies:-MySQL LIMIT is Not working
I got question that LIMIT is not working properly,but actually as per the manual kit of mysql LIMIT work like below :
The first parameter indicates the starting record (first record is 0). The second parameter is the number of records to return, NOT the last record to return.
LIMIT 0, 10
This will return 10 records starting at record 0 (i.e. 0 - 9)
LIMIT 10, 20
This will return 20 records starting at record 10 (i.e. 10 - 29)
LIMIT 10, 10
This will return the 10 records starting at record 10 ( 10 - 19).
Example :--
select * from dbName.emp limit 10,10;
Posted By:-javadevelopersguide
Follow Link-http://javadevelopersguide.blogspot.com
16 June, 2011
SQL: User ERROR orUSER STORED PROCEDURE
CREATE TABLE TEST1
(
T_ID INT IDENTITY(1,1) PRIMARY KEY,
T_NAME VARCHAR(25)
)
--Create another table TEST2_DEPEND having 2 field TD_ID,TD_ADDRESS
GO
CREATE TABLE TEST2_DEPEND
(
TD_ID INT FOREIGN KEY REFERENCES TEST1(T_ID),
TD_ADDRESS VARCHAR(25)
)
GO
--Insert into TEST1 Values
GO
INSERT INTO TEST1 VALUES ('Manoj')
GO
INSERT INTO TEST1 VALUES ('Kumar')
GO
INSERT INTO TEST1 VALUES ('Bardhan')
GO
--User Stored Procedure For Insert/Delete (Pass 'D' for Delete,'I' for Insert)
--This Below defined procedure raiserror user defined error to user when some Error
--like Foreign Key Violation,Duplicate Key Entry (Primary key) or any other errors.
--I have first get the Error No. and then check the Error and Error No given in sys.messages message_id,language_id.
--Language id is defined in sys.syslanguages msglangid for us_english language(1033).ERROR_NUMBER() function is used
--to get the Error No. from the current session.
--I have used SQL Transaction for better accuracy of data in database .I used Begin Tran,ROllback Tran,Commit for
--implementing TCL structure in SQL Database.If any error occurs during execution the wrong data may not violate the
--database implemented rules.
GO
CREATE PROC USP_TEST1
(
@OP_TYP VARCHAR(3),
@ID INT,
@ADDRESS VARCHAR(30)=NULL
)
AS
BEGIN TRY
BEGIN TRAN
IF @OP_TYP='I'
BEGIN
INSERT INTO TEST1 VALUES(@ADDRESS)
END
ELSE IF @OP_TYP='D'
BEGIN
DELETE FROM TEST1 WHERE T_ID=@ID
END
COMMIT
END TRY
BEGIN CATCH
DECLARE @TMP VARCHAR(MAX)
SET @TMP=ERROR_NUMBER();
IF @TMP=547
BEGIN
--RAISERROR raise Error For user (If Any)
RAISERROR('Cannot Delete! Value Dependency (Foreign key)??? ',16,1)
--Transaction Rollback for keeping only Old Data
ROLLBACK TRAN
END
ELSE IF @TMP=2627
BEGIN
RAISERROR('Cannot Insert! Cannot Insert Duplicate Value ???',16,1)
--Transaction Rollback for keeping only Old Data
ROLLBACK TRAN
END
ELSE
BEGIN
--RAISERROR raise Error For user (If Any)
RAISERROR('Some Error in DataBase??',16,1)
--Transaction Rollback for keeping only Old Data
ROLLBACK TRAN
END
END CATCH
GO
--Insert value Into Foreign key Table Value
INSERT INTO TEST2_DEPEND VALUES(2,'Bhubaneswar')
--Execute the Procedure For Delete From Primary Table(D=Delete,I=insert)
EXEC USP_TEST1 'D',2
--Expected Output Error
(0 row(s) affected)
Msg 50000, Level 16, State 1, Procedure USP_TEST1, Line 26
Cannot Delete! Value Dependency (Foreign key)???
I have used all this type of error handling error for the developers which will not hamper the frontend developer to handle error from
application frontend.For better knowledge about Errors & Languages in SQL Follow the below lines.
SELECT * FROM SYS.MESSAGES
SELECT * FROM SYS.SYSLANGUAGES
Posted By:-javadevelopersguide
Link:-http://javadevelopersguide.blogspot.com
SQL: Adding IDENITY property to Existing Column
--Steps to Add Identity
1.Add new Column with IDENTITY
2.Drop Constraint (if Any)
3.Drop the Old Column
4.Rename the New Column with Old Column Name
--Existing Table
CREATE TABLE Employee
(
Emp_Id INT PRIMARY KEY,
Emp_Name VARCHAR(100)
)
--1St Add a New Column with Identity
ALTER TABLE Employee
ADD EmpNew_ID INT IDENTITY (1,1)
--2Nd Drop The Primary Key Constraints(if Primary key is exist)
ALTER TABLE Employee
DROP CONSTRAINT PK__Employee__262359AB07020F21
--3Rd Drop the Old ID from Table
ALTER TABLE Employee
DROP COLUMN Emp_ID
--4Th Rename the New Column with OLD Column Name
SP_RENAME 'Employee.EmpNew_ID','Emp_Id','COLUMN'
--Now enjoy the Column & Table with new Flavour of IDENTITY.Really I had so much curisity to know when I got this from one
--of my friend as Co-worker.Firstly I though that it is so simple as we alter any column of any table but after 20-30 min.I
--realize that this is the proper way for accomplish the Task.But , be sure that that table donot have any data and always consider
--for Primary key ,if necessary first drop the Primary key the proceed.May be the cadinal position of the changed column.
--Show the Table with New Form
SELECT * FROM TEST_TABLE
--Posted By: javadevelopersguide
--Link:-http://javadevelopersguide.blogspot.com
15 June, 2011
SQL: Rename Column or Tables,Use of SP_RENAME
EXEC SP_RENAME 'TABLE_NAME.COLUMN_NAME','COLUMN_NAME','COLUMN'
OR
SP_RENAME 'TABLE_NAME.COLUMN_NAME','COLUMN_NAME','COLUMN'
ALTER TABLE Employee
ALTER COLUMN EMP_NAME VARCHAR(100)
--Renaming a table
EXEC SP_RENAME 'Employee', 'New_employee'
OR
SP_RENAME 'Employee', 'New_employee'
SP_RENAME, Procedure Changes the name of a user-created object in the current database.
Remarks:
Changing any part of an object name can break scripts and stored procedures.
I recommend you do not use this statement to rename stored procedures, triggers,
user-defined functions, or views; instead, drop the object and re-create it with the
new name.
To rename objects, columns, and indexes, requires ALTER permission on the object.
To rename user types, requires CONTROL permission on the type. To rename a database,
requires membership in the sysadmin or dbcreator fixed server roles .
Posted By:- javadevelopersguide
Link: http://javadevelopersguide.blogspot.com
SQL: Fetching Record One-by-One without using Cursor
DECLARE @EMP_ID CHAR( 11 )
SET ROWCOUNT 0
SELECT * INTO #MYTEMP FROM Employee
SET ROWCOUNT 1
SELECT @EMP_ID = EMP_ID FROM #Employee
WHILE @@ROWCOUNT <> 0
BEGIN
SET ROWCOUNT 0
SELECT * FROM #MYTEMP WHERE EMP_ID = @EMP_ID
DELETE #MYTEMP WHERE EMP_ID = @EMP_ID
SET ROWCOUNT 1
--Set one id to @EMP_ID from #MYTEMP
SELECT @EMP_ID= EMP_ID FROM #MYTEMP
END
SET ROWCOUNT 0
Remarks:
Always avoid to use cursor due to slower execution.In the above query Cursor can be
replaced by above way.I used a tempory table and Rowcount property.When ROWCOUNT is 0 ,the sql statement
can execute with any number of record operation,But when ROWCOUNT is 1
at that time the the sql statement can work with only one Record.So I have used this for my
requirement ,without using CURSOR record fetching One-By-One is possible.
Posted By:javadevelopersguide
Link:-http://javadevelopersguide.blogspot.com
13 June, 2011
SQL:Disable Or Enable a Trigger
Purpose of the following Trigger
---------------------------------
--AVOIDE TO DROP TABLES FROM DATABASE
USE Test_Manoj
Go
CREATE TRIGGER TRG_DB_SAFTY
ON DATABASE
FOR DROP_TABLE
AS
RAISERROR('DROP CANNOT POSSIBLE,PLEASE CONTACT ADMIN..',16,1)
ROLLBACK ;
After creation of trigger any point of time a trigger can be disable or enable by the user.For Disable a trigger(de-activate) DISABLE keyword is used as follows:-
--Disable Trigger on Database
USE Test_Manoj
Go
disable TRIGGER TRG_DB_SAFTY on database
For Enable a trigger on Database,any other object we need ENABLE keyword as follows:-
--Enable trigger on Database
USE Test_Manoj
Go
ENABLE TRIGGER TRG_DB_SAFTY on database
Disabling all triggers
------------------------------Disable all triggers on all server
USE Test_Manoj
Go
DISABLE Trigger ALL ON ALL SERVER
OR
--Disable all triggers in Database
USE Test_Manoj
Go
DISABLE Trigger ALL ON DATABASE
Go
Disable Trigger on Table
---------------------------------
USE Test_Manoj
Go
DISABLE Trigger ALL ON DBO.MY_EMP
Go
Posted By:-javadevelopersguide
Link:-http://javadevelopersguide.blogspot.com
SQL: Function for finding Number of Column in a Given Table
--FUNCTION FOR FINDING NO OF COLUMN FROM GIVEN TABLE
--Create a function with Table_Name as Parameter
CREATE FUNCTION FUN_COL_COUNT(@T_NAME VARCHAR(50))
RETURNS INT
AS
BEGIN
DECLARE @CNT INT
SELECT @CNT=MAX(ORDINAL_POSITION) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME=@T_NAME
RETURN @CNT
END
--Run the Function
SELECT DBO.FUN_COL_COUNT('Table_name')
This above statement return the no.of column in the Table_name .Here DBO represents DataBase Object(Schema).More about Schema read some other articles/Posts.
Here Information schema views provide an internal, system table-independent view of the SQL Server metadata. Information schema views enable applications to work correctly although significant changes have been made to the underlying system tables. The information schema views included in SQL Server comply with the ISO standard definition for the INFORMATION_SCHEMA.
Posted By: javadevelopersguide
Link:-http://javadevelopersguide.blogspot.com
10 June, 2011
SQL:Make your Database Read/Write Only
1) By using ALTER TABLE
--SET DATABASE READ/WRITE ONLY
If the read-only requirements for the database are temporary, you will need to reset the configuration option following any procedures undertaken. This is achieved with a small modification to the ALTER DATABASE statement to indicate that the database should return to a writeable mode.
ALTER DATABASE Database_name SET READ_WRITE
The status read-only requirements for the database are temporary, but sometimes we need it for better administrative or Command over multiple user.
ALTER DATABASE Test_Manoj set READ_ONLY
2) By using SP_DBOPTION
EXEC SP_DBOPTION "Database_name", "READ ONLY", "TRUE"
EXEC SP_DBOPTION "Test_Manoj" ,"READ ONLY","TRUE"
The other possibility is to DENY tthe INSERT and UPDATE rights on the table that you want to set Read-Only. The Deny always override the Allow right. This way, your user will be part of the db_datawriter and you will explicitly override (and deny) the insert and update rights on some table.
Follow Link-http://javadevelopersguide.blogspot.com
By Manoj
SQL:Script for Drop All Foreign Key Constraints from Current Database
SELECT 'ALTER TABLE '+OBJECT_NAME(F.parent_object_id)+' DROP CONSTRAINT '+F.NAME FROM sys.foreign_keys F
Run the above Query.
Output-
ALTER TABLE BR_DTL DROP CONSTRAINT FK__BR_DTL__BR_PTCDALTER TABLE BR_DTL DROP CONSTRAINT FK__BR_DTL__BR_TNIDALTER TABLE COM_MST DROP CONSTRAINT FK__COM_MST__COM_TPC
Run the generated Above script
This Script will help you for Dropping all foreign key.Really, I was in trouble when my project Manager ask me for writing the query for Droping all Constraints and recreate.Really it was one of my one of the best effort to work with Database.I took the question of my project Manager and did it.
Posted By: Manoj K. Bardhan
Follow Link-http://javadevelopersguide.blogspot.com
SQL:Show Execution Plan of SQL Statement--SHOWPLAN_ALL
--Syntax
SET SHOWPLAN_ALL { ON OFF }
--Example
SET SHOWPLAN_ALL ON--Table is not created ,only Execution plan of the 'Create Table' type will displayCREATE TABLE TEST_TABLE(T_ID INT,T_NAME VARCHAR(50))
--Set the SHOWPLAN_ALL OFF SET SHOWPLAN_ALL OFF
--Table CreatedCREATE TABLE TEST_TABLE(T_ID INT,T_NAME VARCHAR(50))
Select Statement:
--On StatusSET SHOWPLAN_ALL ONSELECT * FROM TEST_TABLE
--Off StatusSET SHOWPLAN_ALL OFFSELECT * FROM TEST_TABLE
This Causes Microsoft SQL Server not to execute Transact-SQL statements. Instead, SQL Server returns detailed information about how the statements are executed and provides estimates of the resourcerequirements for the statements.
When SET SHOWPLAN_ALL is ON, SQL Server returns execution information for each statement without executing it, and Transact-SQL statements are not executed. After this option is set ON, informationabout all subsequent Transact-SQL statements are returned until the option is set OFF. For example, if a CREATE TABLE statement is executed while SET SHOWPLAN_ALL is ON, SQL Server returns an error message from a subsequent SELECT statement involving that same table, informing users that the specifiedtable does not exist. Therefore, subsequent references to this table fail. When SET SHOWPLAN_ALL is OFF, SQL Server executes the statements without generating a report.SET SHOWPLAN_ALL is intended to be usedby applications written to handle its output. Use SET SHOWPLAN_TEXT to return readable output for MicrosoftWin32 command prompt applications, such as the osql utility.SET SHOWPLAN_TEXT and SET SHOWPLAN_ALL cannot be specified inside a stored procedure; they must be the only statements in a batch.With SHOWPLAN_ALL statement:-
Parallel
0 = Operator is not running in parallel.(Not Sucessfully Executed)
1 = Operator is running in parallel (Sucessfully Executed)
SET SHOWPLAN_ALL returns information as a set of rows that form a hierarchical tree representing the steps taken by the SQL Server query processor as it executes each statement. Each statement reflected in the output contains a single row with the text of the statement, followed by several rows with the details of the execution steps. The table shows the columns that the output contains.Also follow SHOWPLAN_TEXT & SHOWPLAN_XML.
Posted By: Manoj K. Bardhan
Follow Link-http://javadevelopersguide.blogspot.com
09 June, 2011
SQL:FINDING ALL THE TABLE NAME & COLUMN NAME WHICH HAVING IDENTITY FIELD(AUTO INCREMENT)
SELECT C.NAME AS COLNAME,T.NAME AS TABLENAME,C.IS_IDENTITY FROM SYS.COLUMNS C INNER JOIN SYS.TABLES T ON C.OBJECT_ID=T.OBJECT_ID WHERE C.IS_IDENTITY=1
This post has so many uses for manages databases.
Posted By:-javadevelopersguide
Follow Link:-http://javadevelopersguide.blogspot.com
SQL:MAKE YOUR DATABASE OFFLINE/ONLINE
Setting a Database Offline/Online by using 3 way we can do.
Way 1.(By using Alter DataBase)
ALTER DATABASE
--Make ofline
ALTER DATABASE Test_Manoj SET OFFLINE
--Make online
ALTER DATABASE Test_Manoj SET OFFLINE
Way 2.(By using sp_dboptions)
--Set the Database Offline
sp_dboption database_name,'offline',true
--Set the Database Offline
sp_dboption database_name,'offline',false
Ex:-
sp_dboption Test_Manoj,'offline',true
Way 3.(By SQL Management Studio)
=>View Menu
=>Object Explorer
=>Right Click on Database
=>Task
=>Take Offline
Now , Your Database is in Offline Mode/Online Mode and enjoy the administrative command on SQL Server.
Posted By :javadevelopersguide
Follow Link-:http://javadevelopersguide.blogspot.com