728x90

Scripts sorted by Title


  1. Cold Database Backup ( Oracle : 8i 9i )
    Shell Script : Retreives a list of all database files from the database whilst still running an
    Updated: 24-NOV-04

  2. Cold Database Backup ( Oracle : 7 8 )
    Shell Script : Retreives a list of all database files from the database whilst still running an
    Updated: 08-JAN-02

  3. Create Database TEmplate ( Oracle : 7 8 )
    Shell Script : Creates a database. You will need to edit this and enter you system tablespace d
    Updated: 26-OCT-98

  4. Create Database Template ( Oracle : 8i 9i )
    Shell Script : Creates a database. You will need to edit this and enter you system tablespace d
    Updated: 18-APR-02

  5. Database Shutdown ( Oracle : 7 8 )
    Shell Script : Simple database shutdown script. Gets the ORACLE_HOME from /etc/oratab. This scr
    Updated: 29-JUL-98

  6. Database Shutdown ( Oracle : 8i 9i 10g )
    Shell Script : Simple database shutdown script. Gets the ORACLE_HOME from /etc/oratab. This scr
    Updated: 18-APR-02

  7. Database Size ( Oracle : 7 8 )
    Shell Script : Displays physical size off all databases on a UNIX Machine.
    Updated: 08-JAN-02

  8. Database Size ( Oracle : 8i 9i )
    Shell Script : Displays physical size off all databases on a UNIX Machine.
    Updated: 03-APR-02

  9. Database Startup ( Oracle : 7 8 )
    Shell Script : Simple database startup script. Gets the ORACLE_HOME from /etc/oratab. This scri
    Updated: 29-JUL-98

  10. Database Startup Script ( Oracle : 8i 9i 10g )
    Shell Script : Simple database startup script. Gets the ORACLE_HOME from /etc/oratab. This scri
    Updated: 18-APR-04

  11. Display the Number Of CPUS ( Oracle : )
    Shell Script : Display the number of CPUS in the major UNIX platforms
    Updated: 31-JAN-03

  12. Full Database Export ( Oracle : 7 8 8i 9i )
    Shell Script : Full database export and compress using named pipes. Use the full database impor
    Updated: 29-JUL-98

  13. Full Database Import ( Oracle : 7 8 8i 9i )
    Shell Script : Full database import and uncompress using named pipes.You will need this if you
    Updated: 24-MAY-99

  14. Hot Database Backup ( Oracle : 7 8 )
    Shell Script : Generates SQL script put the tablespace in backup mode and to do a unix copy to
    Updated: 29-JUL-98

  15. Hot Database Backup ( Oracle : 8i 9i )
    Shell Script : Generates SQL script put the tablespace in backup mode and to do a unix copy to
    Updated: 13-SEP-02

  16. Set Database ARCHIVELOG Mode ( Oracle : 7 8 )
    Shell Script : Shut database down and sets the database in Archive Log Mode. This script us
    Updated: 29-JUL-98

  17. Set Database ARCHVELOG Mode ( Oracle : 8i 9i )
    Shell Script : Shut database down and sets the database in Archive Log Mode.
    Updated: 18-APR-02

  18. Show Installed Oracle Version ( Oracle : 7 8 8i )
    Shell Script : This script will list out all Oracle products installed by the last Oracle insta
    Updated: 08-OCT-02

  19. Solaris Memory Calculation ( Oracle : )
    Shell Script : Gives actual memory usage of Oracle from a Solaris Operating System using the 'p
    Updated: 28-FEB-02

  20. Standby Database Gap Detection Script. ( Oracle : 8i )
    Shell Script : Detects if a standby database is up to date. Send an OEM alert is not. Script
    Updated: 02-JUN-05

Site Map

General Information : Home | Company Profile | Contact Us | Legal
Database Support : Proactive Support | Pay Per Incident Support
Expert Services : High Availability | Creative Solutions | Training
Build Services : Oracle Installations | Revive your Oracle Setup | Low Cost Development
Free Oracle Resources: DBA Scripts | Oracle Links

728x90

USE sample
GO

-- 시스템 테이블을 직접 수정할 수 있도록 설정
EXEC sp_configure 'allow updates', 1
RECONFIGURE WITH OVERRIDE
GO

-- 함수는 master 데이타베이스 생성, 소유자는 system_function_schema 지정
USE master
GO

CREATE FUNCTION system_function_schema.fn_greatest ( @x bigint, @y bigint )
 RETURNS bigint
AS
BEGIN
 RETURN ( CASE WHEN @x>@y THEN @x ELSE @y END )
END
GO

CREATE FUNCTION system_function_schema.fn_least( @x bigint, @y bigint )
 RETURNS bigint
AS
BEGIN
 RETURN ( CASE WHEN @x<@y THEN @x ELSE @y END )
END
GO

-- 시스템 테이블을 직접 수정할 수 없도록 0으로 변경(반드시 수행)
EXEC sp_configure 'allow updates', 0
RECONFIGURE WITH OVERRIDE
GO

-- 생성한 시스템 함수는 모든 데이타베이스에서 호출 가능
USE sample
GO

SELECT fn_greatest(989, 998), fn_least(989, 998)
GO

결과
998 989

/* 시스템 함수 조회하기 */
USE master
GO

SELECT name , OBJECTPROPERTY(id, 'IsScalarFunction'),  *
FROM sysobjects
WHERE uid = USER_ID('system_function_schema')
AND (OBJECTPROPERTY(id, 'IsScalarFunction')=1
 OR OBJECTPROPERTY(id, 'IsTableFunction')=1
 OR OBJECTPROPERTY(id, 'IsInlineFunction')=1 )
GO

[출처] 시스템 함수 생성|작성자 주디

728x90

/*
 SQL 서버 메타데이터 정보 가져오는 방법

  1. 시스템 저장 프로시져 사용 방법(권고, 메타 데이터를 가져오기 위해서는 시스템 저장 프로시져, 시스템 함수, 시스템 제공 뷰
  2. INFORMATION 스키마 뷰 사용 방법
*/

SELECT *
FROM Northwind.INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = N'Customers'

/*
결과 정보 반환
Northwind dbo Customers CustomerID 1 NULL No  nchar 5 10 NULL NULL NULL NULL NULL NULL Unicode NULL NULL Korean_Wansung_CI_AS NULL NULL NULL
Northwind dbo Customers CompanyName 2 NULL No  nvarchar 40 80 NULL NULL NULL NULL NULL NULL Unicode NULL NULL Korean_Wansung_CI_AS NULL NULL NULL
Northwind dbo Customers ContactName 3 NULL YES nvarchar 30 60 NULL NULL NULL NULL NULL NULL Unicode NULL NULL Korean_Wansung_CI_AS NULL NULL NULL
Northwind dbo Customers ContactTitle 4 NULL YES nvarchar 30 60 NULL NULL NULL NULL NULL NULL Unicode NULL NULL Korean_Wansung_CI_AS NULL NULL NULL
Northwind dbo Customers Address 5 NULL YES nvarchar 60 120 NULL NULL NULL NULL NULL NULL Unicode NULL NULL Korean_Wansung_CI_AS NULL NULL NULL
Northwind dbo Customers City 6 NULL YES nvarchar 15 30 NULL NULL NULL NULL NULL NULL Unicode NULL NULL Korean_Wansung_CI_AS NULL NULL NULL
Northwind dbo Customers Region 7 NULL YES nvarchar 15 30 NULL NULL NULL NULL NULL NULL Unicode NULL NULL Korean_Wansung_CI_AS NULL NULL NULL
Northwind dbo Customers PostalCode 8 NULL YES nvarchar 10 20 NULL NULL NULL NULL NULL NULL Unicode NULL NULL Korean_Wansung_CI_AS NULL NULL NULL
Northwind dbo Customers Country 9 NULL YES nvarchar 15 30 NULL NULL NULL NULL NULL NULL Unicode NULL NULL Korean_Wansung_CI_AS NULL NULL NULL
Northwind dbo Customers Phone 10 NULL YES nvarchar 24 48 NULL NULL NULL NULL NULL NULL Unicode NULL NULL Korean_Wansung_CI_AS NULL NULL NULL
Northwind dbo Customers Fax 11 NULL YES nvarchar 24 48 NULL NULL NULL NULL NULL NULL Unicode NULL NULL Korean_Wansung_CI_AS NULL NULL NULL
*/

SQL SERVER 2000에서 제공하는 INFORMATION 스키마 뷰

CHECK_CONSTRAINTS
COLUMNS
DOMAINS
......


-- 기본으로 제공하는 INFORMATION 스키마 뷰 활용
USE pubs
GO

SELECT * FROM INFORMATION_SCHEMA.CHECK_CONSTRAINTS
GO

-- 사용자가 INFORMATION 스키마 뷰 생성
USE master
GO

EXEC sp_configure 'allow updates', 1
RECONFIGURE WITH OVERRIDE
GO

EXEC sp_MS_upd_sysobj_category 1
GO

CREATE VIEW INFORMATION_SCHEMA.DEFAULT_CONSTRAINS
AS

SELECT db_name() as CONSTRAINT_CATALOG,
 user_name(c_obj.uid) AS CONSTRAINT_SCHEMA,
 c_obj.name AS CONSTRAINT_NAME,  
 com.text as DEFAULT_CLAUSE
FROM sysobjects c_obj, syscomments com
WHERE  c_obj.uid = user_id()
 AND c_obj.id = com.id
 AND c_obj.xtype = 'D'
GO

EXEC sp_MS_upd_sysobj_category 2
GO

EXEC sp_configure 'allow updates', 0
GO

RECONFIGURE WITH OVERRIDE
GO


USE sample
GO

SELECT *
FROM INFORMATION_SCHEMA.DEFAULT_CONSTRAINS
GO

SELECT db_name(), user_name()
GO

SELECT *
FROM sysobjects
WHERE uid = user_id() AND xtype = 'D'
GO


SELECT *
FROM syscomments

+ Recent posts