Eclipse 에서 javadoc 한글 문제 처리
VM option 란에 다음 줄을 삽입하면 된다.
[Event] observe 에서의 onload와 dom:loaded 의 차이
기본적으로 대부분의 스크립터는 "페이지가 모두 로드 되었다." 라는 전제는
이미지를 포함한 모든 리소스가 로드완료 (즉 하단 상태표시줄에 완료 라고 찍히는 타이밍)을 페이지가 로드 되었다 라고 인식한다.
하지만 실제로(물론 위의 설명이 가장 적합하지만) 스크립트가 실행되는데는 모든 리소스를 전제로 기능을 추가하지만 그렇지 않아야 하는 경우도 있다. 즉. dom만 있으면 되는 경우이다.
(대표적으로 CSS가 그렇다. 이미지도 하나의 엘리먼트로 인식하라. src에 있는 이미지가 다운로드 되는것과 img 엘리먼트가 dom로드되는것은 틀린이야기이다.)
prototype에서는 이에 대해서 서로 다른 이벤트로드를 지원하는데.
Event.observe(window,"load",handler)
Event.observe(document,"dom:loaded",handler)
이다.
1. 웹페이지의 모든 리소스까지 로드상태
Event.observe(window,"load",handler)
웹페이지의 모든 리소스를 로드한 상태를 말한다. 이미지 및 플래쉬까지 로드된 상태이다.간혹가다 플래쉬 경로가 맞지 않아서 로드되지 않고 지연되는 경우에는 위의 이벤트는 그 지연이 끝날때까지 기다리게 된다.
2. 웹페이지의 dom만 로드된상태.
Event.observe(document,"dom:loaded",handler)
웹페이지의 모든 dom만 로드된 상태이다. body안에 있는 엘리먼트가 구성되었을때의 동작이다.여기에서는 css나 이미지의 다운로드 같은 상태는 포함되지 않는다.
'DEVELOPMENT > Javascript' 카테고리의 다른 글
[HTML/JavaScript ]select box option 추가 삭제 예제 (0) | 2009.08.11 |
---|---|
HTML 특수문자코드표 (0) | 2009.07.22 |
[IE8] 웹 표준 개발자의 IE8 웹사이트 호환성 대응 (0) | 2009.04.13 |
[javascript] select box (0) | 2009.02.16 |
[HTML] 제어 문자 (0) | 2009.01.16 |
무한도전 춘향전 캐릭터
'낙서장' 카테고리의 다른 글
서울 디자인 올림픽 2009 (0) | 2009.10.22 |
---|---|
주말 저녁 (0) | 2009.09.18 |
윈도우7 작업표시줄 빠른실행 아이콘 되살리기 (0) | 2009.05.12 |
바쁨 (0) | 2009.01.30 |
[Excel] 기본적이고 유용한 단축키 (0) | 2008.07.04 |
ER-Win에서 DB Table 가져오기
ER-Win에서 ERD 작성을 하다보면 기존 DB에서 테이블 정보를 가져와야 할 때가 있다.
Tools > Reverse Engineer
'DEVELOPMENT > Database' 카테고리의 다른 글
Multi Table Insert (0) | 2009.07.14 |
---|---|
동일 칼럼을 가지나, 이름을 달리하는 테이블 만들기 (0) | 2009.07.14 |
MSSQL2000, 2005 테이블 명세서 추출 쿼리문 (0) | 2009.05.13 |
oracle 시작과 종료 (0) | 2009.05.07 |
Toad 단축키 (0) | 2009.04.18 |
MSSQL2000, 2005 테이블 명세서 추출 쿼리문
--//SQL Database documentation script
--//Description: T-SQL script to generate the database document for SQL server 2000/2005
Declare @i Int, @maxi Int
Declare @j Int, @maxj Int
Declare @sr int
Declare @Output varchar(4000)
--Declare @tmpOutput varchar(max)
Declare @SqlVersion varchar(5)
Declare @last varchar(155), @current varchar(255), @typ varchar(255), @description varchar(4000)
create Table #Tables (id int identity(1, 1), Object_id int, Name varchar(155), Type varchar(20), [description] varchar(4000))
create Table #Columns (id int identity(1,1), Name varchar(155), Type Varchar(155), Nullable varchar(2), [description] varchar(4000))
create Table #Fk(id int identity(1,1), Name varchar(155), col Varchar(155), refObj varchar(155), refCol varchar(155))
create Table #Constraint(id int identity(1,1), Name varchar(155), col Varchar(155), definition varchar(1000))
create Table #Indexes(id int identity(1,1), Name varchar(155), Type Varchar(25), cols varchar(1000))
If (substring(@@VERSION, 1, 25 ) = 'Microsoft SQL Server 2005')
set @SqlVersion = '2005'
else if (substring(@@VERSION, 1, 26 ) = 'Microsoft SQL Server 2000')
set @SqlVersion = '2000'
else
set @SqlVersion = '2005'
Print '<head>'
Print '<title>::' + DB_name() + '::</title>'
Print '<style>'
Print ' body {'
Print ' font-family:verdana;'
Print ' font-size:9pt;'
Print ' }'
Print ' td {'
Print ' font-family:verdana;'
Print ' font-size:9pt;'
Print ' }'
Print ' th {'
Print ' font-family:verdana;'
Print ' font-size:9pt;'
Print ' background:#d3d3d3;'
Print ' }'
Print ' table'
Print ' {'
Print ' background:#d3d3d3;'
Print ' }'
Print ' tr'
Print ' {'
Print ' background:#ffffff;'
Print ' }'
Print ' </style>'
Print '</head>'
Print '<body>'
set nocount on
if @SqlVersion = '2000'
begin
insert into #Tables (Object_id, Name, Type, [description])
--FOR 2000
select object_id(table_name), '[' + table_schema + '].[' + table_name + ']',
case when table_type = 'BASE TABLE' then 'Table' else 'View' end,
cast(p.value as varchar(4000))
from information_schema.tables t
left outer join sysproperties p on p.id = object_id(t.table_name) and smallid = 0 and p.name = 'MS_Description'
order by table_type, table_schema, table_name
end
else if @SqlVersion = '2005'
begin
insert into #Tables (Object_id, Name, Type, [description])
--FOR 2005
Select o.object_id, '[' + s.name + '].[' + o.name + ']',
case when type = 'V' then 'View' when type = 'U' then 'Table' end,
cast(p.value as varchar(4000))
from sys.objects o
left outer join sys.schemas s on s.schema_id = o.schema_id
left outer join sys.extended_properties p on p.major_id = o.object_id and minor_id = 0 and p.name = 'MS_Description'
where type in ('U', 'V')
order by type, s.name, o.name
end
Set @maxi = @@rowcount
set @i = 1
print '<table border="0" cellspacing="0" cellpadding="0" width="550px" align="center"><tr><td colspan="3" style="height:50;font-size:14pt;text-align:center;"><a name="index"></a><b>Index</b></td></tr></table>'
print '<table border="0" cellspacing="1" cellpadding="0" width="550px" align="center"><tr><th>Sr</th><th>Object</th><th>Type</th></tr>'
While(@i <= @maxi)
begin
select @Output = '<tr><td align="center">' + Cast((@i) as varchar) + '</td><td><a href="#' + Type + ':' + name + '">' + name + '</a></td><td>' + Type + '</td></tr>'
from #Tables where id = @i
print @Output
set @i = @i + 1
end
print '</table><br />'
set @i = 1
While(@i <= @maxi)
begin
--table header
select @Output = '<tr><th align="left"><a name="' + Type + ':' + name + '"></a><b>' + Type + ':' + name + '</b></th></tr>', @description = [description]
from #Tables where id = @i
print '<br /><br /><br /><table border="0" cellspacing="0" cellpadding="0" width="750px"><tr><td align="right"><a href="#index">Index</a></td></tr>'
print @Output
print '</table><br />'
print '<table border="0" cellspacing="0" cellpadding="0" width="750px"><tr><td><b>Description</b></td></tr><tr><td>' + isnull(@description, '') + '</td></tr></table><br />'
--table columns
truncate table #Columns
if @SqlVersion = '2000'
begin
insert into #Columns (Name, Type, Nullable, [description])
--FOR 2000
Select c.name,
type_name(xtype) + (
case when (type_name(xtype) = 'varchar' or type_name(xtype) = 'nvarchar' or type_name(xtype) ='char' or type_name(xtype) ='nchar')
then '(' + cast(length as varchar) + ')'
when type_name(xtype) = 'decimal'
then '(' + cast(prec as varchar) + ',' + cast(scale as varchar) + ')'
else ''
end
),
case when isnullable = 1 then 'Y' else 'N' end,
cast(p.value as varchar(8000))
from syscolumns c
inner join #Tables t on t.object_id = c.id
left outer join sysproperties p on p.id = c.id and p.smallid = c.colid and p.name = 'MS_Description'
where t.id = @i
order by c.colorder
end
else if @SqlVersion = '2005'
begin
insert into #Columns (Name, Type, Nullable, [description])
--FOR 2005
Select c.name,
type_name(user_type_id) + (
case when (type_name(user_type_id) = 'varchar' or type_name(user_type_id) = 'nvarchar' or type_name(user_type_id) ='char' or type_name(user_type_id) ='nchar')
then '(' + cast(max_length as varchar) + ')'
when type_name(user_type_id) = 'decimal'
then '(' + cast([precision] as varchar) + ',' + cast(scale as varchar) + ')'
else ''
end
),
case when is_nullable = 1 then 'Y' else 'N' end,
cast(p.value as varchar(4000))
from sys.columns c
inner join #Tables t on t.object_id = c.object_id
left outer join sys.extended_properties p on p.major_id = c.object_id and p.minor_id = c.column_id and p.name = 'MS_Description'
where t.id = @i
order by c.column_id
end
Set @maxj = @@rowcount
set @j = 1
print '<table border="0" cellspacing="0" cellpadding="0" width="750px"><tr><td><b>Table Columns</b></td></tr></table>'
print '<table border="0" cellspacing="1" cellpadding="0" width="750px"><tr><th>Sr.</th><th>Name</th><th>Datatype</th><th>Nullable</th><th>Description</th></tr>'
While(@j <= @maxj)
begin
select @Output = '<tr><td width="20px" align="center">' + Cast((@j) as varchar) + '</td><td width="150px">' + isnull(name,'') + '</td><td width="150px">' + upper(isnull(Type,'')) + '</td><td width="50px" align="center">' + isnull(Nullable,'N') + '</td><td>' + isnull([description],'') + '</td></tr>'
from #Columns where id = @j
print @Output
Set @j = @j + 1;
end
print '</table><br />'
--reference key
truncate table #FK
if @SqlVersion = '2000'
begin
insert into #FK (Name, col, refObj, refCol)
-- FOR 2000
select object_name(constid), s.name, object_name(rkeyid) , s1.name
from sysforeignkeys f
inner join sysobjects o on o.id = f.constid
inner join syscolumns s on s.id = f.fkeyid and s.colorder = f.fkey
inner join syscolumns s1 on s1.id = f.rkeyid and s1.colorder = f.rkey
inner join #Tables t on t.object_id = f.fkeyid
where t.id = @i
order by 1
end
else if @SqlVersion = '2005'
begin
insert into #FK (Name, col, refObj, refCol)
-- FOR 2005
select f.name, COL_NAME (fc.parent_object_id, fc.parent_column_id) , object_name(fc.referenced_object_id) , COL_NAME (fc.referenced_object_id, fc.referenced_column_id)
from sys.foreign_keys f
inner join sys.foreign_key_columns fc on f.object_id = fc.constraint_object_id
inner join #Tables t on t.object_id = f.parent_object_id
where t.id = @i
order by f.name
end
Set @maxj = @@rowcount
set @j = 1
if (@maxj >0)
begin
print '<table border="0" cellspacing="0" cellpadding="0" width="750px"><tr><td><b>Refrence Keys</b></td></tr></table>'
print '<table border="0" cellspacing="1" cellpadding="0" width="750px"><tr><th>Sr.</th><th>Name</th><th>Column</th><th>Reference To</th></tr>'
While(@j <= @maxj)
begin
select @Output = '<tr><td width="20px" align="center">' + Cast((@j) as varchar) + '</td><td width="150px">' + isnull(name,'') + '</td><td width="150px">' + isnull(col,'') + '</td><td>[' + isnull(refObj,'N') + '].[' + isnull(refCol,'N') + ']</td></tr>'
from #FK where id = @j
print @Output
Set @j = @j + 1;
end
print '</table><br />'
end
--Default Constraints
truncate table #Constraint
if @SqlVersion = '2000'
begin
insert into #Constraint (Name, col, definition)
select object_name(c.constid), col_name(c.id, c.colid), s.text
from sysconstraints c
inner join #Tables t on t.object_id = c.id
left outer join syscomments s on s.id = c.constid
where t.id = @i
and
convert(varchar,+ (c.status & 1)/1)
+ convert(varchar,(c.status & 2)/2)
+ convert(varchar,(c.status & 4)/4)
+ convert(varchar,(c.status & 8)/8)
+ convert(varchar,(c.status & 16)/16)
+ convert(varchar,(c.status & 32)/32)
+ convert(varchar,(c.status & 64)/64)
+ convert(varchar,(c.status & 128)/128) = '10101000'
end
else if @SqlVersion = '2005'
begin
insert into #Constraint (Name, col, definition)
select c.name, col_name(parent_object_id, parent_column_id), c.definition
from sys.default_constraints c
inner join #Tables t on t.object_id = c.parent_object_id
where t.id = @i
order by c.name
end
Set @maxj = @@rowcount
set @j = 1
if (@maxj >0)
begin
print '<table border="0" cellspacing="0" cellpadding="0" width="750px"><tr><td><b>Default Constraints</b></td></tr></table>'
print '<table border="0" cellspacing="1" cellpadding="0" width="750px"><tr><th>Sr.</th><th>Name</th><th>Column</th><th>Value</th></tr>'
While(@j <= @maxj)
begin
select @Output = '<tr><td width="20px" align="center">' + Cast((@j) as varchar) + '</td><td width="250px">' + isnull(name,'') + '</td><td width="150px">' + isnull(col,'') + '</td><td>' + isnull(definition,'') + '</td></tr>'
from #Constraint where id = @j
print @Output
Set @j = @j + 1;
end
print '</table><br />'
end
--Check Constraints
truncate table #Constraint
if @SqlVersion = '2000'
begin
insert into #Constraint (Name, col, definition)
select object_name(c.constid), col_name(c.id, c.colid), s.text
from sysconstraints c
inner join #Tables t on t.object_id = c.id
left outer join syscomments s on s.id = c.constid
where t.id = @i
and ( convert(varchar,+ (c.status & 1)/1)
+ convert(varchar,(c.status & 2)/2)
+ convert(varchar,(c.status & 4)/4)
+ convert(varchar,(c.status & 8)/8)
+ convert(varchar,(c.status & 16)/16)
+ convert(varchar,(c.status & 32)/32)
+ convert(varchar,(c.status & 64)/64)
+ convert(varchar,(c.status & 128)/128) = '00101000'
or convert(varchar,+ (c.status & 1)/1)
+ convert(varchar,(c.status & 2)/2)
+ convert(varchar,(c.status & 4)/4)
+ convert(varchar,(c.status & 8)/8)
+ convert(varchar,(c.status & 16)/16)
+ convert(varchar,(c.status & 32)/32)
+ convert(varchar,(c.status & 64)/64)
+ convert(varchar,(c.status & 128)/128) = '00100100')
end
else if @SqlVersion = '2005'
begin
insert into #Constraint (Name, col, definition)
select c.name, col_name(parent_object_id, parent_column_id), definition
from sys.check_constraints c
inner join #Tables t on t.object_id = c.parent_object_id
where t.id = @i
order by c.name
end
Set @maxj = @@rowcount
set @j = 1
if (@maxj >0)
begin
print '<table border="0" cellspacing="0" cellpadding="0" width="750px"><tr><td><b>Check Constraints</b></td></tr></table>'
print '<table border="0" cellspacing="1" cellpadding="0" width="750px"><tr><th>Sr.</th><th>Name</th><th>Column</th><th>Definition</th></tr>'
While(@j <= @maxj)
begin
select @Output = '<tr><td width="20px" align="center">' + Cast((@j) as varchar) + '</td><td width="250px">' + isnull(name,'') + '</td><td width="150px">' + isnull(col,'') + '</td><td>' + isnull(definition,'') + '</td></tr>'
from #Constraint where id = @j
print @Output
Set @j = @j + 1;
end
print '</table><br />'
end
--Triggers
truncate table #Constraint
if @SqlVersion = '2000'
begin
insert into #Constraint (Name)
select tr.name
FROM sysobjects tr
inner join #Tables t on t.object_id = tr.parent_obj
where t.id = @i and tr.type = 'TR'
order by tr.name
end
else if @SqlVersion = '2005'
begin
insert into #Constraint (Name)
SELECT tr.name
FROM sys.triggers tr
inner join #Tables t on t.object_id = tr.parent_id
where t.id = @i
order by tr.name
end
Set @maxj = @@rowcount
set @j = 1
if (@maxj >0)
begin
print '<table border="0" cellspacing="0" cellpadding="0" width="750px"><tr><td><b>Triggers</b></td></tr></table>'
print '<table border="0" cellspacing="1" cellpadding="0" width="750px"><tr><th>Sr.</th><th>Name</th><th>Description</th></tr>'
While(@j <= @maxj)
begin
select @Output = '<tr><td width="20px" align="center">' + Cast((@j) as varchar) + '</td><td width="150px">' + isnull(name,'') + '</td><td></td></tr>'
from #Constraint where id = @j
print @Output
Set @j = @j + 1;
end
print '</table><br />'
end
--Indexes
truncate table #Indexes
if @SqlVersion = '2000'
begin
insert into #Indexes (Name, type, cols)
select i.name, case when i.indid = 0 then 'Heap' when i.indid = 1 then 'Clustered' else 'Nonclustered' end , c.name
from sysindexes i
inner join sysindexkeys k on k.indid = i.indid and k.id = i.id
inner join syscolumns c on c.id = k.id and c.colorder = k.colid
inner join #Tables t on t.object_id = i.id
where t.id = @i and i.name not like '_WA%'
order by i.name, i.keycnt
end
else if @SqlVersion = '2005'
begin
insert into #Indexes (Name, type, cols)
select i.name, case when i.type = 0 then 'Heap' when i.type = 1 then 'Clustered' else 'Nonclustered' end, col_name(i.object_id, c.column_id)
from sys.indexes i
inner join sys.index_columns c on i.index_id = c.index_id and c.object_id = i.object_id
inner join #Tables t on t.object_id = i.object_id
where t.id = @i
order by i.name, c.column_id
end
Set @maxj = @@rowcount
set @j = 1
set @sr = 1
if (@maxj >0)
begin
print '<table border="0" cellspacing="0" cellpadding="0" width="750px"><tr><td><b>Indexes</b></td></tr></table>'
print '<table border="0" cellspacing="1" cellpadding="0" width="750px"><tr><th>Sr.</th><th>Name</th><th>Type</th><th>Columns</th></tr>'
set @Output = ''
set @last = ''
set @current = ''
While(@j <= @maxj)
begin
select @current = isnull(name,'') from #Indexes where id = @j
if @last <> @current and @last <> ''
begin
print '<tr><td width="20px" align="center">' + Cast((@sr) as varchar) + '</td><td width="150px">' + @last + '</td><td width="150px">' + @typ + '</td><td>' + @Output + '</td></tr>'
set @Output = ''
set @sr = @sr + 1
end
select @Output = @Output + cols + '<br />' , @typ = type
from #Indexes where id = @j
set @last = @current
Set @j = @j + 1;
end
if @Output <> ''
begin
print '<tr><td width="20px" align="center">' + Cast((@sr) as varchar) + '</td><td width="150px">' + @last + '</td><td width="150px">' + @typ + '</td><td>' + @Output + '</td></tr>'
end
print '</table><br />'
end
Set @i = @i + 1;
--Print @Output
end
Print '</body>'
Print '</html>'
drop table #Tables
drop table #Columns
drop table #FK
drop table #Constraint
drop table #Indexes
set nocount off
'DEVELOPMENT > Database' 카테고리의 다른 글
동일 칼럼을 가지나, 이름을 달리하는 테이블 만들기 (0) | 2009.07.14 |
---|---|
ER-Win에서 DB Table 가져오기 (0) | 2009.05.13 |
oracle 시작과 종료 (0) | 2009.05.07 |
Toad 단축키 (0) | 2009.04.18 |
[oracle] decode 함수 (1) | 2009.01.16 |
윈도우7 작업표시줄 빠른실행 아이콘 되살리기
2. 작업표시줄 우클릭 - 도구모음 - 새 도구 모음
3. 폴더라고 되어있는 빈칸에 다음을 복사해서 붙여 넣습니다.
%userprofile%\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch
4. Quick Launch에서 우클릭 - 텍스트표시/제목표시 해제, 보기 - 큰 아이콘
5. Quick Launch를 작업표시줄 왼쪽으로 마우스로 끌어 옮긴다.
6. 작업표시줄 우클릭 - Lock the taskbar 설정
※ 없애는 방법: 바탕화면 바로가기 - 도구모음 - Quick Launch 해재
'낙서장' 카테고리의 다른 글
주말 저녁 (0) | 2009.09.18 |
---|---|
무한도전 춘향전 캐릭터 (0) | 2009.05.17 |
바쁨 (0) | 2009.01.30 |
[Excel] 기본적이고 유용한 단축키 (0) | 2008.07.04 |
JAVA 정석 (0) | 2008.04.11 |
oracle 시작과 종료
#Oracle start
오라클 시작 명령어
기본적으로 오라클 시작시 리스너를 시작함
(모든 과정은 oracle설치 계정으로 진행되어야 함)
lsnrctl start --리스너 시작
sqlplus "/as sysdba" --sqlplus접속 sysdba로
startup
#Oracle stop
오라클 종료 명령어
sqlplus상에서
shutdown [normal, transactional, immediate, abort];
normal : 더이상의 새로운 접속을 허용하지 않으며 종료를 수행하기전에
모든 사용자들이 접속(session)을 끊는것을 기다립니다.
인스턴스를 종료하기전에 데이터베이스를 닫고 dismount합니다.
다음 시작시에는 인스턴스 복구가 필요치 않습니다.
transactional : 트랜스 액션 종료는 클라이언트가 작업을 잃어버리지 않도록
합니다. 특정 인스턴스에서 클라이언트는 새로운 transaction을 시작할 수 없습
니다. 클라이언트는 진행중인 transaction을 종료할때 접속이 끊어집니다.
모든 transaction이 끝났을때 즉시 종료되며 다음 시작때 인스턴스 복구가
필요하지 않습니다.
immediate : 현재 dbms가 수행하고 있는 sql문은 완료하지 않습니다.
오라클 서버는 현재 접속중인 사용자가 접속을 끊을때까지 기다리지 않으며 현재
진행중인 transaction을 rollback하고 모든 사용자의 접속을 끊습니다.
다음 시작때 인스턴스 복구가 필요하지 않습니다.
abort : 정상 종료나 즉시 종료가 제대로 동작하지 않는역우 현재의 데이터
베이스 인스턴스를 중지시킵니다.
오라클 서버가 수행하고 있는 sql문은 즉시 종료되며 현재 접속중인 사용자들이
접속을 끊을때까지 기다리지 않습니다. 커밋되지 않은 transaction은 rollback되
지 않습니다. 파일을 닫지 않은채 인스턴스를 종료합니다.
다음 시작시 인스턴스 복구를 필요로 합니다.
[출처] [Oracle] 오라클 서버 시작 명령어|작성자 juner84
'DEVELOPMENT > Database' 카테고리의 다른 글
ER-Win에서 DB Table 가져오기 (0) | 2009.05.13 |
---|---|
MSSQL2000, 2005 테이블 명세서 추출 쿼리문 (0) | 2009.05.13 |
Toad 단축키 (0) | 2009.04.18 |
[oracle] decode 함수 (1) | 2009.01.16 |
[ORACLE] 테이블 관련 정보 쿼리 (0) | 2008.07.26 |
XSS 공격 패턴
http://ha.ckers.org/xss.html
'DEVELOPMENT > 보안' 카테고리의 다른 글
[크롬]이 페이지가 인증되지 않은 소스에서 스크립트를 로드하려고 시도하고 있습니다 (0) | 2016.03.29 |
---|---|
[MD5] APS , JAVASCRIPT MD5 암호화 함수 (0) | 2008.07.25 |
Toad 단축키
F1 |
Toad 도움말 파일의 SQL Editor 부분이 표시됩니다. |
F2 |
전체 화면 Editor와 Editor/Results 패널 표시 장치 사이를 전환합니다. |
<SHIFT>F2 |
전체 화면 그리드를 전환합니다. |
F3 |
다음으로 일치하는 것을 찾습니다. |
<SHIFT>F3 |
이전에 일치하는 것을 찾습니다. |
F4 |
팝업 창의 테이블, 뷰, 프로시저, 함수, 또는 패키지를 설명합니다. |
F5 |
스크립트로 실행합니다. |
F6 |
커서를 Editor와 Results 패널 사이로 전환합니다. |
F7 |
모든 텍스트를 지웁니다. |
F8 |
이전 SQL 문을 재호출합니다(SQL Statement Recall 창을 불러옵니다). |
F9 |
실행문을 실행합니다. |
<CTRL>F9 |
실행(구문 분석) 없이 실행문을 검사합니다. |
<SHIFT>F9 |
커서 위치에서 현재 실행문을 실행합니다. |
F10 |
오른쪽 클릭 메뉴를 표시합니다. |
F11 |
Script와 같은 것 실행(=F5) |
F12 |
편집기 내용을 지정된 외부 편집기로 전달합니다. |
<CTRL>A |
모든 텍스트를 선택합니다. |
<CTRL>C |
복사 |
<CTRL>D |
프로시저 인수를 표시합니다. |
<CTRL>E |
현재 실행문에서 Explain Plan을 실행합니다. |
<CTRL>F |
텍스트를 찾습니다(Find Text 창을 불러옵니다). |
<CTRL>G |
라인으로 이동합니다(Goto Line 창을 불러옵니다). |
<CTRL>L |
텍스트를 소문자로 변환합니다. |
<CTRL>M |
Make Code Statement |
<CTRL>N |
이름이 지정된 SQL 문을 재호출합니다(SQL Statement Recall 창을 불러옵니다). |
<CTRL>O |
텍스트 파일을 엽니다. |
<CTRL>P |
Strip Code Statement |
<CTRL>R |
검색 및 바꾸기(Find and Replace Text 창을 불러옵니다) |
<CTRL>S |
파일을 저장합니다. |
<SHIFT><CTRL>S |
파일을 다른 이름으로 저장합니다. |
<CTRL>T |
열 드롭다운을 표시합니다. |
<CTRL>U |
텍스트를 대문자로 변환합니다. |
<CTRL>V |
붙여넣기 |
<CTRL>X |
잘라내기 |
<SHIFT><CTRL>Z |
마지막으로 취소한 작업을 재실행합니다. |
<ALT><UP> |
이전 실행문을 표시합니다. |
<ALT><DOWN> |
다음 실행문을 표시합니다(<ALT><UP>을 사용한 후 사용) |
<ALT><PgUp> |
이전 탭으로 이동 |
<ALT><PgDn> |
다음 탭으로 이동 |
<CTRL><ALT><PgUp> |
이전 결과 패널 탭으로 이동 |
<CTRL><ALT><PgDn> |
다음 결과 패널 탭으로 이동 |
<CTRL><HOME> |
데이터 그리드에서는 맨 위의 레코드셋으로 이동하며, 결과 그리드에서는 커서가 위치한 행의 첫 번째 열로 이동하고, 편집기에서는 텍스트의 첫 번째 열과 첫 번째 행으로 이동합니다. |
<CTRL><END> |
데이터 그리드에서는 레코드셋의 맨 끝으로 이동하며, 편집기에서는 텍스트의 마지막 열과 마지막 행으로 이동합니다. 이 단원의 "주의"를 참조하십시오. |
<CTRL><SPACE> |
코드 완성 템플릿을 활성화합니다. |
<CTRL><TAB> |
MDI Child 창의 콜렉션을 순환합니다. |
<CTRL><ENTER> |
커서 이치에서 현재 SQL 문을 실행합니다. |
<CTRL>. (마침표) |
테이블 이름을 자동으로 완성합니다 |
'DEVELOPMENT > Database' 카테고리의 다른 글
MSSQL2000, 2005 테이블 명세서 추출 쿼리문 (0) | 2009.05.13 |
---|---|
oracle 시작과 종료 (0) | 2009.05.07 |
[oracle] decode 함수 (1) | 2009.01.16 |
[ORACLE] 테이블 관련 정보 쿼리 (0) | 2008.07.26 |
[MS-SQL] SELECT INTO (0) | 2008.05.20 |
[IE8] 웹 표준 개발자의 IE8 웹사이트 호환성 대응
한달만에 포스팅입니다. 좀 한가해졌다는 뜻이기도 합니다.
또 어떤 바쁜일이 생길지 모르지만 잠깐 동안 한가해진 동안에는 하고싶었던 공부도 하고
중간고사가 얼마 남지 않았기 때문에 너무 바뻐서 책 한번 펴보지 못한 교과서를 한번 펼쳐 봐야겠습니다. F만 나오질 않길 빌면서 말입니다. ^^;;
쓸데 없는 말은 그만하구요 최근 마이크로 소프트사에서 IE8 버전을 출시했는데요.
곧 오픈이 두개가 있는데 새로운 웹브라우저라니 정말 골치아픈 일이네요.
FF3나, 크롬이니 IE8이니 최근 정말 브라우저 전쟁인거 같습니다. 그에 따라서 웹 개발자들도 힘들구요.. 물론 기본에 충실한 개발자는 힘들지 않겠지만 저처럼 어영 부영 기초 빼고 배운 개발자들은 정말이지 너무 힘듭니다. ㅠㅠ
IE8버전이 나오면서 웹표준을 준수율을 극도로 개선을 시켰다는데 기존 IE7버전에서 돌아가던 멀쩡한 브라우저가 IE8에서는 돌아가지 않는 경우도 발생한다고 합니다.
이게 말이 됩니까. 매번 버전이 바뀔때마다 안되니..기본적으로 하위 버전에도 맞쳐야지 않그렇습니까? 제말이 맞다면 하늘에 대고 "맞습니다." 하고 소리 한번 쳐주세요 ㅡ,.ㅡ^
근데 IE8에서 호환성을 위한 배려를 하지 않은게 아니군요. IE5, IE6, IE7버전의 호환성을 위해 몇가지 방법이 있는데 호환성 문제로 골치거리를 앓고 있는 분들은 한번 적용해보시면 좋은 해결책이 될꺼라 생각합니다.
DTD가 없는 웹 사이트 대응 방법
기본적으로 DTD가 없는 페이지는 아무런 대응을 할 필요가 없습니다.
IE8은 DTD가 없는 페이지는 기본적으로 Quirks Mode로 렌더링 하기 때문에 웹사이트가 깨지지 않습니다. Quicks Mode란 DTD를 표준에 따라 인식하지 못했던 예전 IE5브라우저의 렌더링을 그대로 표현하는 모드입니다. 표준을 따르지 않고 기존 하위 버전에 맞게 맞춰 렌더링을 한다는 말이죠.
DTD가 있는 웹사이트 대응 방법
DTD가 있는 웹사이트인 경우 최적화 된 브라우저의 버전에 따라서 대응 방법이 달라집니다.
첫째 : IE5에 최적화 된 페이지 대응법
둘째 : IE6에 최적화 된 페이지 대응법
셋째 : IE7에 최적화 된 페이지 대응법
MS는 낡은 웹 브라우저에 최적화된 페이지를 깨지지 않게 하기 위해서 <meta> 태그를 이용한 호환 유도 기법을 제공합니다.
DTD가 있고 IE5에 최적화 된 페이지 기법
<meta http-equiv="X-UA-Compatible" content="IE=5" />
</head>
<head></head> 사이에 다음과 같은 <meta> 태그를 사용하게 되면 IE5 렌더링을 흉내내는 Quirks Mode로 렌더링을 하게 된다.
DTD가 있고 IE6에 최적화 된 페이지 대응 방법
IE6에 최적화된 페이지는 개편을 해야한다. IE7로 최적를 해야 하는데 IE8에는 IE6 렌더링 엔진이 없기 때문인데 IE6에서 IE7버전과의 차이는 크지 않기 때문에 IE7로 렌더링 한 후에 다음 코드로 대응 한다.
<meta http-equiv="X-UA-Compatible" content="IE=7" />
</head>
DTD가 혼재되어 있는 웹 사이트 대응법
DTD가 혼재 되어 있는 웹 사이트는 DTD가 없는 페이지와 DTD가 있는 페이지를 구분하여 각각 다른 방법으로 적용해야 한다. 하지만 이런 호환 유도 코드를 DTD가 있는 페이지만 별도로 적용하는 것이 어렵다면 DTD가 있는 페이지만 IE7로 최적화 한 후 모든 페이지에 다음과 같은 코드를 작성한다.
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
</head>
DTD가 없는 페이지는 여전히 Quirks Mode로, DTD가 있는 페이지는 IE7로 표준 모드로 렌더링 할것이다. 따라서 DTD가 있는지 없는지 없는지 여부에 관계없이 IE7로 렌더링 하는 'IE=7' 보다 DTD가 있고 없음에 따라 자동으로 렌더링 모드를 전환해 주는 'IE=EmulateIE7' 코드를 더욱 권장한다.
위의 방법은 각 페이지에 IE에 적용하는 각 페이지에 <meta>를 삽을을 해줘야만 했다.
하지만 이 방법은 모든 페이지에 적용을 해야 하므로 페이지 본수가 늘어날수록 정말 많은 일이 아닐수가 없다. 이 방법을 해결하기 위해서 서버측 응답 헤더에 호환 유도 코드를 삽입 할 수도 있는데 그 내용을 알아보겠다.
호환 유도 코드를 서버측 응답 헤더에 적용하는 방법
IIS에 적용 할 코드
<configuration>
<system.webServer>
<httpProtocol>
<customHeaders>
<clear />
<add name="X-UA-Compatible" value="IE=EmulateIE7" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
Apache에 적용 할 코드
'DEVELOPMENT > Javascript' 카테고리의 다른 글
HTML 특수문자코드표 (0) | 2009.07.22 |
---|---|
[Event] observe 에서의 onload와 dom:loaded 의 차이 (0) | 2009.05.21 |
[javascript] select box (0) | 2009.02.16 |
[HTML] 제어 문자 (0) | 2009.01.16 |
[HTML 팁] HTML 소스 정렬 사이트 (0) | 2008.12.27 |