明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

在線建庫

[摘要]在線建庫<%on error resume nextclass createdb'''建立一個數(shù)據(jù)庫'用法:'dim cdb'set cdb=n...

在線建庫<%
on error resume next
class createdb
'
'
'建立一個數(shù)據(jù)庫
'用法:
'dim cdb
'set cdb=new createdb
'cdb.setdbname=數(shù)據(jù)庫名
'if cdb.ifok then response.end 數(shù)據(jù)庫已經(jīng)存在
'cdb.run
'檢查是否運行成功
'if cdb.ifok then
'response.write cdb.errs
'end if

private dbname '數(shù)據(jù)庫名字
private ifsure '用來保存是否成功的標志,如果成功值為false,失敗為true,初值為true
private errstr '保存說明錯誤的文字

'獲取ifsure值
property get ifok()
  ifok=ifsure
end property

'獲取errstr值
property get errs()
  errs=errstr
end property

'
private sub class_initialize()
  '設置ifsure,errstr的初值
  ifsure=true
  errstr="在線建庫" 
end sub

'設置數(shù)據(jù)庫名
property let setdbname(byval dbn)

  dbname=dbn
'檢查數(shù)據(jù)庫是否已經(jīng)存在
  ifexistdb dbn

end property

public sub run()

'
class_initialize
'檢查數(shù)據(jù)庫名是否為空
if isnull(dbname) or isempty(dbname) or cstr(dbname)="" then
  errstr="建立數(shù)據(jù)庫失敗,數(shù)據(jù)庫名不能為空"
  ifsure=true
  exit sub
end if

'這句不能放在ifexistdb里,也不能隨后執(zhí)行,因為找不到數(shù)據(jù)庫后自動退出這個類,
'可能是太嚴重的錯誤吧,所以只能在另一個地方清理錯誤碼了
err.clear

dim objcreate '保存ADOX.CATALOG對象

set objcreate=Server.CreateObject("adox.catalog")
if err.number<>0 then
  errstr="建立adox.catalog對象失敗,請檢查你的用戶權限。"+err.description
  set objcreate=nothing
  ifsure=true
  exit sub
end if

'建立數(shù)據(jù)庫
objcreate.create("data source="+server.mappath(dbname)+";provider=microsoft.jet.oledb.4.0")
if err.number<>0 then
  errstr="建立數(shù)據(jù)庫失敗。<br>"+err.description
  ifsure=true
  set objcreate=nothing
  exit sub
end if
'如果沒有出錯,設置成功標志
ifsure=false

end  sub



private sub ifexistdb(byval dbn)
'還原類狀態(tài)
ifsure=false
'如果數(shù)據(jù)庫存在,就設為true,因為如果不存在的話就不能繼續(xù)執(zhí)行這個類
'檢查數(shù)據(jù)庫是否已經(jīng)存在
dim conn
set conn=server.createobject("adodb.connection")
conn.connectionstring="provider=microsoft.jet.oledb.4.0;data source="+server.mappath(dbn)
conn.open
if err.number=0 then
  errstr="數(shù)據(jù)庫已經(jīng)存在"
  ifsure=true
  conn.close
  set conn=nothing
end if


end sub

end class
%>



標簽:在線建庫