รวมโปรแกรมสำหรับ Query Oracle Database
- Oracle SQL Developer (Free)
http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html
- PL/SQL Developer (Free Trial)
http://www.allroundautomations.com/
- DreamCoder SQL Developer (Free)
http://www.sqldeveloper.net/
-Toad for Oracle
http://toadfororacle.com/index.jspa
- Navicat for Oracle
http://www.navicat.com/
ข้อมูลบางส่วนมาจาก
http://www.narisa.com/forums/index.php?showtopic=28424
Showing posts with label Oracle. Show all posts
Showing posts with label Oracle. Show all posts
Thursday, June 28, 2012
Thursday, July 9, 2009
ORACLE String Function Reference
แปลง String เป็นตัวใหญ่ทั้งหมด (UPPERCASE)
แปลง String เป็นตัวเล็กทั้งหมด (LOWERCASE)
Function สำหรับ Concat String
More Information: http://www.psoug.org/reference/string_func.html
SELECT UPPER('Super Louis') FROM dual;
แปลง String เป็นตัวเล็กทั้งหมด (LOWERCASE)
SELECT LOWER('Super Louis') FROM dual;
Function สำหรับ Concat String
SELECT 'String1 ' || 'String2 ' || dummy as concatString
FROM dual;
SELECT CONCAT(CONCAT('String1 ','String2 '),dummy) as concatString
FROM dual
FROM dual;
SELECT CONCAT(CONCAT('String1 ','String2 '),dummy) as concatString
FROM dual
More Information: http://www.psoug.org/reference/string_func.html
Labels:
Oracle
Thursday, February 12, 2009
DateTime Oracle
http://www.dba-oracle.com/t_date_math_manipulation.htm
http://www.psoug.org/reference/date_func.html
http://www.akadia.com/services/ora_date_time.html
http://www.psoug.org/reference/date_func.html
http://www.akadia.com/services/ora_date_time.html
ALTER SESSION SET TIME_ZONE = '+7:0';
select sysdate from dual
select add_months( sysdate,2)
from dual
select user_id,
to_char( to_date('01011970','ddmmyyyy') + 1/24/60/60 * view_date, 'dd-mm-yyyy hh24:mi:ss') AS TS2Date,
to_char( to_date('01011970','ddmmyyyy') + 1/24/60/60 * view_date, 'mm-yyyy') AS TS2Date2,
score,
max_score,
pass_score,
result,
course_id
from test_history
select sysdate + 1/24/60/60 + 420/1440
from dual
select sysdate + 1/24/60/60
from dual;
select sysdate + 420/24/60
from dual
select to_date('01011970','ddmmyyyy') + 1/24/60/60
from dual
select TRUNC(SYSDATE+1/24,'HH')
from dual
select sysdate from dual
select add_months( sysdate,2)
from dual
select user_id,
to_char( to_date('01011970','ddmmyyyy') + 1/24/60/60 * view_date, 'dd-mm-yyyy hh24:mi:ss') AS TS2Date,
to_char( to_date('01011970','ddmmyyyy') + 1/24/60/60 * view_date, 'mm-yyyy') AS TS2Date2,
score,
max_score,
pass_score,
result,
course_id
from test_history
select sysdate + 1/24/60/60 + 420/1440
from dual
select sysdate + 1/24/60/60
from dual;
select sysdate + 420/24/60
from dual
select to_date('01011970','ddmmyyyy') + 1/24/60/60
from dual
select TRUNC(SYSDATE+1/24,'HH')
from dual
Labels:
Oracle
Friday, September 19, 2008
Change datetime format and language on oracle
SELECT USERENV('language') from dual;
SELECT to_char(sysdate,'dd-mon-yyyy') FROM dual;
ALTER SESSION SET nls_language = 'AMERICAN';
SELECT to_char(sysdate,'dd-mon-yyyy') FROM dual;
ALTER SESSION SET nls_language = 'THAI';
SELECT to_char(sysdate,'dd-mon-yyyy') FROM dual;
SELECT to_char(sysdate,'dd-mon-yyyy') FROM dual;
ALTER SESSION SET nls_language = 'AMERICAN';
SELECT to_char(sysdate,'dd-mon-yyyy') FROM dual;
ALTER SESSION SET nls_language = 'THAI';
SELECT to_char(sysdate,'dd-mon-yyyy') FROM dual;
http://www.dba-oracle.com/t_nls_date_format_sysdate.htm
http://infolab.stanford.edu/~ullman/fcdb/oracle/or-time.html
Labels:
Oracle
Monday, August 11, 2008
SQL Server Linked Server
Query from link server
for default instance name
for other instance name
other method
for default instance name
SELECT * FROM [LinkServerName].DatabaseName.dbo.TableName
SELECT * FROM OPENQUERY([LinkServerName], 'SELECT * FROM TableName')
SELECT * FROM OPENQUERY([LinkServerName], 'SELECT * FROM TableName')
for other instance name
SELECT * FROM [LinkServerName\InstanceName].DatabaseName.dbo.TableName
SELECT * FROM OPENQUERY([LinkServerName\InstanceName], 'SELECT * FROM TableName')
SELECT * FROM OPENQUERY([LinkServerName\InstanceName], 'SELECT * FROM TableName')
other method
SELECT * FROM LinkServerName..UserName.TableName
Labels:
Oracle,
SQL Server
Thursday, August 7, 2008
Oracle SQL *Plus write text to screen
SQL> set serveroutput on;
SQL> begin
2 dbms_output.put_line('Test ' || 'concat');
3 end;
4 /
Test concat
SQL> begin
2 dbms_output.put_line('Test ' || 'concat');
3 end;
4 /
Test concat
Labels:
Oracle
How to use trigger on Oracle
Prepare table
Create trigger
Test the trigger
View result on t1_audit
http://infolab.stanford.edu/~ullman/fcdb/oracle/or-triggers.html
http://www.psoug.org/reference/table_trigger.html
http://www.exforsys.com/tutorials/oracle-9i/oracle-database-triggers.html
http://somkiat.exteen.com/20040715/trigger-short-tutorial
CREATE TABLE t1
(
c1 INTEGER,
c2 VARCHAR(10),
c3 VARCHAR(10)
)
CREATE TABLE t1_audit
(
a1 DATE,
a2 VARCHAR(3),
c1 INTEGER,
c2 VARCHAR(10),
c3 VARCHAR(10)
)
insert into t1 values (1,'111','aaa');
insert into t1 values (2,'222','bbb');
insert into t1 values (3,'333','ccc');
insert into t1 values (4,'444','ddd');
(
c1 INTEGER,
c2 VARCHAR(10),
c3 VARCHAR(10)
)
CREATE TABLE t1_audit
(
a1 DATE,
a2 VARCHAR(3),
c1 INTEGER,
c2 VARCHAR(10),
c3 VARCHAR(10)
)
insert into t1 values (1,'111','aaa');
insert into t1 values (2,'222','bbb');
insert into t1 values (3,'333','ccc');
insert into t1 values (4,'444','ddd');
Create trigger
CREATE OR REPLACE TRIGGER t1_trig
AFTER UPDATE ON t1
FOR EACH ROW
BEGIN
IF(:NEW.c2 IS NULL) THEN
INSERT INTO t1_audit VALUES (SYSDATE, 'OLD', :OLD.c1, :OLD.c2, :OLD.c3);
INSERT INTO t1_audit VALUES (SYSDATE, 'NEW', :NEW.c1, :NEW.c2, :NEW.c3);
END IF;
END;
or use this command
CREATE OR REPLACE TRIGGER t1_trig
AFTER UPDATE ON t1
FOR EACH ROW
WHEN (NEW.c2 IS NULL)
BEGIN
INSERT INTO t1_audit VALUES (SYSDATE, 'OLD', :OLD.c1, :OLD.c2, :OLD.c3);
INSERT INTO t1_audit VALUES (SYSDATE, 'NEW', :NEW.c1, :NEW.c2, :NEW.c3);
END;
AFTER UPDATE ON t1
FOR EACH ROW
BEGIN
IF(:NEW.c2 IS NULL) THEN
INSERT INTO t1_audit VALUES (SYSDATE, 'OLD', :OLD.c1, :OLD.c2, :OLD.c3);
INSERT INTO t1_audit VALUES (SYSDATE, 'NEW', :NEW.c1, :NEW.c2, :NEW.c3);
END IF;
END;
or use this command
CREATE OR REPLACE TRIGGER t1_trig
AFTER UPDATE ON t1
FOR EACH ROW
WHEN (NEW.c2 IS NULL)
BEGIN
INSERT INTO t1_audit VALUES (SYSDATE, 'OLD', :OLD.c1, :OLD.c2, :OLD.c3);
INSERT INTO t1_audit VALUES (SYSDATE, 'NEW', :NEW.c1, :NEW.c2, :NEW.c3);
END;
Test the trigger
UPDATE t1
SET t1.c2 = ''
WHERE t1.c1 = 3;
SET t1.c2 = ''
WHERE t1.c1 = 3;
View result on t1_audit
07/08/2008 14:26:02 OLD 3 333 ccc
07/08/2008 14:26:02 NEW 3 ccc
07/08/2008 14:26:02 NEW 3 ccc
http://infolab.stanford.edu/~ullman/fcdb/oracle/or-triggers.html
http://www.psoug.org/reference/table_trigger.html
http://www.exforsys.com/tutorials/oracle-9i/oracle-database-triggers.html
http://somkiat.exteen.com/20040715/trigger-short-tutorial
Labels:
Oracle
Tuesday, August 5, 2008
Show row number in SQL Server and Oracle
SQL Server:
Show row number in SQL Server 2000, 2005
http://support.microsoft.com/kb/186133
Oracle:
Show row number in Oracle
http://blog.lishman.com/2008/03/rownum.html
USE Northwind
SELECT ROW_NUMBER() OVER (ORDER BY EmployeeID DESC) AS RowID, *
FROM EMPLOYEES ORDER BY FirstName
SELECT ROW_NUMBER() OVER (ORDER BY EmployeeID DESC) AS RowID, *
FROM EMPLOYEES ORDER BY FirstName
Show row number in SQL Server 2000, 2005
http://support.microsoft.com/kb/186133
Oracle:
SELECT rownum, column_name FROM user_tables
Show row number in Oracle
http://blog.lishman.com/2008/03/rownum.html
Labels:
Oracle,
SQL Server
Sunday, May 4, 2008
Get current datetime
SQL Server:
Oracle:
Reference
http://msdn2.microsoft.com/en-us/library/ms187928.aspx
http://www.psoug.org/reference/date_func.html
SELECT GETDATE()
SELECT {fn NOW()}
SELECT CURRENT_TIMESTAMP
SELECT {fn NOW()}
SELECT CURRENT_TIMESTAMP
Oracle:
SELECT SYSDATE AS Now FROM dual;
SELECT CURRENT_DATE AS Now FROM dual;
SELECT CURRENT_DATE AS Now FROM dual;
Reference
http://msdn2.microsoft.com/en-us/library/ms187928.aspx
http://www.psoug.org/reference/date_func.html
Labels:
Oracle,
SQL Server
Command for describe table
SQL Server
Syntax:
Oracle
Describe an Oracle Table, View, Synonym, package or Function.
Note: that because this is a SQL*Plus command you don't need to terminate it with a semicolon.
Syntax:
Syntax:
SP_HELP <tablename>
SP_COLUMNS <tablename>
SP_COLUMNS <tablename>
Oracle
Describe an Oracle Table, View, Synonym, package or Function.
Note: that because this is a SQL*Plus command you don't need to terminate it with a semicolon.
Syntax:
DESC table
DESC view
DESC synonym
DESC function
DESC package
DESC view
DESC synonym
DESC function
DESC package
Labels:
Oracle,
SQL Server
Subscribe to:
Posts (Atom)
