태그 : 표준
2007/05/09   Oracle과 SQL 표준 [2]
2006/02/09   RSS와 Atom [2]
Oracle과 SQL 표준
BNF Grammars for SQL-92, SQL-99 and SQL-2003

Oracle을 만지게 되면서 습관적으로 실수하는 항목이 있는데, table alias 앞에 'AS'를 붙이는 것이다.


MSSQL을 써오면서, column명과 table명에 alias를 설정할 때, 모두 'AS'를 붙여서 사용해 왔었다.

그리고, 어쩌다보니 oracle을 사용하게 되었는데, MSSQL에서 사용하던 습관이 약간?의 문제를 일으켰다.


SQL-99SQL-2003의 경우 그 문법에서 table alias를 설정할 때, <table_name> [[AS] <alias_name>]으로 되어있어, 'AS'를 생략하거나 추가할 수 있는것에 비해, SQL-92의 경우 <table_name> [<corelation-name>]으로 되어있어, 'AS'를 사용할 수 없도록 되어있다.

Oracle의 경우 SQL-92에 기초하고 있기 때문에. Table에 alias를 사용할 때에는 'AS'를 기록하여서는 안된다.
(Column alias의 경우 SQL-92에서부터 <value_expression> [[AS] <column_name>]으로 되어있기때문에 'AS'를 사용하여도 된다.)

SQL is a special-purpose language, sometimes described as a relational language, which can be used with a database for a number of different purposes. SQL can be considered a standard language, with some qualification. There are two significant standards, SQL-92 and SQL-99. Most database vendors, including Oracle, are largely compliant with SQL-92. SQL-99 greatly extends the scope of SQL, introducing new features such as persistent modules and multidimensional analytical capabilities. Most database vendors are largely compliant with the core features of SQL-99, but not the new features. This core compliance allows them to claim that they are compliant with SQL-99, even though this is virtually the same as being compliant with SQL-92. To confuse things further, most vendors, including Oracle, also have extensions to standard SQL, which are sometimes unavoidable. SQL commands can generally be grouped into a number of general categories, according to their purpose:


지금까지는 항상 MS의 제품/기술들이 표준을 안지키고, 표준에 느린 반응을 한다고 욕해왔는데, 이 부분에서는 MS가 Oracle보다 빠른 행보를 보인듯 하다. (물론 다른 query들을 다 비교해 본것이 아니기 때문에, 정확하게 그렇다고는 할 수 없겠지만, table alias에서만은 그렇다.)
by 나무귀신 | 2007/05/09 01:23 | tech | 트랙백(1) | 덧글(2)
RSS와 Atom
Blog 만들기 세미나에서 2월 9일 목요일 저녁에 하기로 한 내용이 RSS1.0과 RSS2.0, Atom의 비교이다.


처음 RSS를 접했던 것은 누군가의 블로그에 있는 조그마한 아이콘을 클릭했었던 것으로 기억한다.
그때는 단순히 글의 목록을 저장하는 xml 파일이라고 생각했고, 1.0이 발전하여 2.0이 된 것으로 생각하였다.

그리고, 처음 Blog 만들기 세미나를 시작하였을 때, 내용확인 차원에서 RSS2.0의 Specification에 대해서만 확인하였다.


그리고, 그렇게만 하면 될 것으로 생각했었다.



그런데, 9일에 할 내용을 보다 보니, 그게 아니었다..ㅠ0ㅠ
1.0과 2.0이 다르고, 이것과 Atom이 또 달랐다.


RSS는 원래 Nescape사에서 신문에 대한 서비스를 보다 쉽게 하기위해서(?) 제작하였던 것이라고 한다.
그때 발표되었던 버전이 RSS 0.9까지였고, 이후 Nescape의 상황이 나빠지면서 이것이 2가지 길로 분화되었다고 한다.

그 중 하나가 RSS1.0이고 다른 하나가 RSS2.0이란다.
그래서 약자도 다르다. 1.0은 RDF Site Summary이고, 2.0은 Really Simple Syndication 이라고...




그리고 RSS의 경우에는 하나의 업체에서 그 규약을 만들었고, copyright규정도 있다고 한다.(고 적혀있었던거 같다.. 기억도 잘 안나고, 찾아보기에는 본인이 너무 게으르다...)
그리고 이 RSS라는 놈은 규정된 Tag 이외의 것을 내용에 기록할 수 없다록 되어있다. plain text와 esacpe된 HTML만 기록할 수 있다고 한다. 그래서 RSS에 있는 글의 내용을 parsing하여 재사용하기는 힘들다고 한다.(그리고 아직 표준은 아니라고...)


이러한 문제에 따라 나온것이 Atom
Atom의 경우 여러 업체에서 함께 협력하여 제안을 했으며, 그 내용에 plain text나 XML Tag를 기록할 수 있도록 하여 보다 높은 확장성과, 글 내용의 재활용이 가능하도록 하였다.
그리고, Rss에서는 Site에 대한 Summery만 가능하고, Article에 대한 Summery가 불가능한데 비하여, Atom에서는 Article 각각에 대하여 Summery를 작성할 수 있도록 되어있다.

그리고 가장 중요한 것은 Atom이 준표준안으로 채택되었다는 것이다!!!



아직 국내에서 많이 알려지고, 사용되는 것은 RSS이지만, Atom이 많은 장점을 가지고 있으니 점점 atom쪽을 지원하는 곳이 많아질 것으로 생각된다.


2002년 12월에 작성된 What is RSS? :  http://www.xml.com/pub/a/2002/12/18/dive-into-xml.html
by 나무귀신 | 2006/02/09 00:43 | Blog 일반 | 트랙백(1) | 덧글(2)


< 이전페이지 다음페이지 >