2009년 10월 16일 금요일

[MS-SQL] ASP 에서 DB/TABLE 존재여부 알아내기

출처 : 드래곤아이 웹 스쿨 ( http://www.dragoneye.co.kr/dboard/board/index.asp?url=view&boardid=column11&field=&str=&page=1&sid=2830 )

-------------------------------------------------------------------------------------
■ 디비 존재 여부 알아내기및 이름 정하기
<%
ConnString = "Provider=SQLOLEDB;Data Source=(LOCAL);Initial Catalog=master;User ID=sa;Password=wqewqea1234;"
'//master 디비에 들어갈 수 있는 계정으로 연결문자 작성

set db = server.createobject("adodb.connection")
db.open ConnString

sql = " select name from master.dbo.sysdatabases "
'// 모든(사용자+시스템) 디비이름 가져오기
set rs=db.execute(sql)

if not rs.eof then

do until rs.eof

'//// 여기서 만들려는 디비이름과 중복여부 체크및 이름 바꾸기를 적용해야겟죠. 아래는 그냥 출력만해봅니다
response.write rs("name") & "<br>"

rs.movenext
loop
end if

rs.close
set rs=nothing
db.close
set db=nothing
%>


■ 테이블 존재 여부 알아내기및 이름 정하기

<%

ConnString2 = "Provider=SQLOLEDB;Data Source=(LOCAL);Initial Catalog=son;User ID=sss;Password=1234;"

set db2 = server.createobject("adodb.connection")
db2.open ConnString2

sql = " select name from sysobjects"
'// 모든(사용자+시스템) 테이블이름 가져오기
set rs=db2.execute(sql)

if not rs.eof then
do until rs.eof

'//// 여기서 만들려는 테이블이름과 중복여부 체크및 이름 바꾸기를 적용해야겟죠. 아래는 그냥 출력만해봅니다

response.write rs("name") & "<br>"

rs.movenext
loop
end if

rs.close
set rs=nothing
db2.close
set db2=nothing

%>

============================================================================================

◆ 테이블 존재여부 - 테스트 확인 정상작동됨

<%
' 쿼리문 작성 - 테이블 존재여부 확인
tsql = "SELECT name FROM sysobjects "
tsql = tsql & " WHERE name='테이블이름' "

' 테이블 존재여부 확인
set rs1 = dbconn.execute (tsql)

if rs1.EOF or rs1.BOF then

response.write "<b>테이블이 존재하지 않습니다.</b>"

else

response.write "<b>테이블이 존재합니다.</b>"

end if
%>


댓글 없음:

댓글 쓰기