新聞中心
如何判斷數(shù)據(jù)庫是否存在?

創(chuàng)新互聯(lián)公司為您提適合企業(yè)的網(wǎng)站設計?讓您的網(wǎng)站在搜索引擎具有高度排名,讓您的網(wǎng)站具備超強的網(wǎng)絡競爭力!結(jié)合企業(yè)自身,進行網(wǎng)站設計及把握,最后結(jié)合企業(yè)文化和具體宗旨等,才能創(chuàng)作出一份性化解決方案。從網(wǎng)站策劃到成都網(wǎng)站設計、網(wǎng)站制作、外貿(mào)營銷網(wǎng)站建設, 我們的網(wǎng)頁設計師為您提供的解決方案。
在ASP中,判斷數(shù)據(jù)庫是否存在是非常重要的操作。這一操作通常需要在首次使用數(shù)據(jù)庫時進行,以確保數(shù)據(jù)庫已經(jīng)創(chuàng)建并可以正常使用。下面我們將探討。
一、常規(guī)方法
常規(guī)方法是通過ADO(ActiveX數(shù)據(jù)對象)中的連接屬性來判斷數(shù)據(jù)庫是否存在。先來看看連接字符串,連接字符串包含許多屬性,其中涉及到判斷一個數(shù)據(jù)庫是否存在必須要包含1個Database屬性值。
接下來,我們通過判斷連接字符串中的Database屬性值是否與要判斷的數(shù)據(jù)庫名一致來確定是否存在這個數(shù)據(jù)庫。
1、代碼實現(xiàn)
以下是ASP代碼實現(xiàn)樣例:
“`
<%
dim conn, sql, str
str = “Provider=MSDataShape;Data Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=password;Data Source=” & Server.MapPath(“test.mdb”) & “;”
Set conn = Server.CreateObject(“ADODB.Connection”)
conn.ConnectionString = str
conn.Mode = 3 ‘1是只讀;2是寫;3是讀寫’
conn.Open
‘確定數(shù)據(jù)庫是否存在’
sql = “SELECT COUNT(*) as count FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = ‘test.mdb'”
Set result = conn.Execute(sql)
If result.Fields(“count”) > 0 Then
Response.Write(“數(shù)據(jù)庫存在”)
Else
Response.Write(“數(shù)據(jù)庫不存在”)
End If
conn.Close
Set conn = Nothing
%>
“`
2、在判斷中使用信息模式
其實也可以在判斷中使用信息模式來判斷數(shù)據(jù)庫是否存在,代碼如下:
“`
<%
dim conn, sql, str
str = “Provider=MSDataShape;Data Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=password;Data Source=” & Server.MapPath(“test.mdb”) & “;”
Set conn = Server.CreateObject(“ADODB.Connection”)
conn.ConnectionString = str
conn.Mode = 3 ‘1是只讀;2是寫;3是讀寫’
conn.Open
‘在判斷中使用Information Schema’
sql = “SELECT COUNT(*) as count FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = ‘test.mdb'”
Set result = conn.Execute(sql)
If result.Fields(“count”) > 0 Then
Response.Write(“數(shù)據(jù)庫存在”)
Else
Response.Write(“數(shù)據(jù)庫不存在”)
End If
conn.Close
Set conn = Nothing
%>
“`
二、使用文件對象判斷
由于在判斷數(shù)據(jù)庫是否存在時,我們常常會將數(shù)據(jù)庫存儲在指定的文件夾下,因此我們可以通過ASP的文件對象FileSystemObject去判斷指定的數(shù)據(jù)庫文件是否存在。
以下是代碼實現(xiàn)樣例:
“`
<%
dim fso, filePath
Set fso = Server.CreateObject(“Scripting.FileSystemObject”)
‘數(shù)據(jù)庫文件路徑’
filePath = Server.MapPath(“test.mdb”)
‘判斷數(shù)據(jù)庫是否存在’
If fso.FileExists(filePath) Then
Response.Write(“數(shù)據(jù)庫已存在”)
Else
Response.Write(“數(shù)據(jù)庫不存在”)
End If
Set fso = Nothing
%>
“`
以上是的方法。大體上可以從兩個方面出發(fā):一是通過ADO連接字符串中的連接屬性來判斷,二是使用文件對象來判斷指定的數(shù)據(jù)庫文件是否存在。
無論使用哪種方法,判斷數(shù)據(jù)庫是否存在都是一個簡單的操作。但是確保操作正確運作,并不是一件容易的事情。因此,在判斷數(shù)據(jù)庫是否存在時,可分別應用以上方法并且更好也都能成功。
相關問題拓展閱讀:
- asp判斷數(shù)據(jù)庫id語句
asp判斷數(shù)據(jù)庫id語句
你無非就像想根據(jù)ID取出圖片,那么用for語句干嘛呢?段蠢寬滲難握巧陪道你的id不是唯一的且有重復值?
查看壁紙
rs.RecordCount then
id=rs.RecordCount
‘id大于更大記錄,置為更大記錄
End if
‘經(jīng)過以上,已經(jīng)完全限定了id 的范圍,在可操作允許的范圍內(nèi)
rs.AbsolutePage = id
‘置當前頁數(shù)為id所指頁
response.write””
else
response.write “暫無相關圖片”
End if
rs.close
conn.close
set rs=nothing
set conn=nothing%>
**********************************************************
自己處理掉注釋
select max() form table
select min() form table
取更大值和最小值
還有一種辦法:
select * from table order by id desc
select * from table order by id asc
取簡碰得的記錄集中之一條就是更大或者最小攔悶談.
提示而已,下面罩簡該怎么辦,我想你應該想到了吧!
maxid=Conn.Execute(“姿啟鎮(zhèn)旁中select max(id) from bizhi”)(0)
‘取出數(shù)據(jù)庫更大ID
minid=Conn.Execute(“select min(id) from bizhi”)(0)
‘跡粗取出數(shù)據(jù)庫更大ID
‘判斷ID是否存在
sql=”select * from bizhi where id=”& id
if not(rs.eof and rs.bof) then
‘記錄存在
else
‘記錄不存在
end if
關于asp 判斷數(shù)據(jù)庫的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。
香港服務器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務提供商,擁有超過10年的服務器租用、服務器托管、云服務器、虛擬主機、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗。專業(yè)提供云主機、虛擬主機、域名注冊、VPS主機、云服務器、香港云服務器、免備案服務器等。
當前名稱:ASP如何判斷數(shù)據(jù)庫是否存在(asp判斷數(shù)據(jù)庫)
網(wǎng)站路徑:http://fisionsoft.com.cn/article/cdpcjpg.html


咨詢
建站咨詢
