asp串連Mssql的方法及常見的錯誤

來源:互聯網
上載者:User

asp銜接Mssql的辦法及常見的差錯
//第一種寫法:
MM_conn_STRING = "Driver={SQL Server};server=(local);uid=sa;pwd=;database=infs;"
Set conn = Server.Createobject("ADODB.Connection")
conn.open MM_conn_STRING
SET RS=SERVER.CreateObject("ADOBD.recordset")
SQL="SELECT * FROM TABLE ORDER BY ID DESC"
RS.open SQL,CONN,3,3  
//第二種寫法:(DSN銜接)
MM_conn_STRING="DSN=BBS;UID=SA;PWD=12345"
Set conn = Server.Createobject("ADODB.Connection")
conn.open MM_conn_STRING
SET RS=SERVER.CreateObject("ADOBD.recordset")
SQL="SELECT * FROM TABLE ORDER BY ID DESC"
RS.open SQL,CONN,3,3   // 3,3是改動、刪除、增添開關!
//第三種寫法:
MM_conn_STRING_own = "Driver={SQL Server};server=(local);uid=sa;pwd=11111;database=infs;"
Set conn = Server.Createobject("ADODB.Connection")
conn.open MM_conn_STRING_own
//第四種 - 這種方式用在ACCESS中
strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" _
& Server.MapPath("asp.mdb")
set conn = server.createobject("adodb.connection")
conn.open strconn
實現方式一:
<%
dim conn
set conn=server.createobject("ADODB.connection")
conn.open "PROVIDER=SQLOLEDB;DATA SOURCE=(local);UID=使用者名稱;PWD=密碼;DATABASE=資料庫"
Set conn = Server.CreateObject("ADODB.Connection")
DSNtemp="DRIVER={SQL Server};SERVER=(local);UID=使用者名稱;PWD=密碼;DATABASE=資料庫"
conn.open DSNtemp
%>

實現方式二:
<%
option explicit
dim startime
dim conn
dim connstr
dim db,pass_word,User_ID,Data_Source
startime=timer()
db="資料庫名稱"
Pass_word="帳號密碼"  
User_ID="登陸帳號"    
Data_Source="服務名稱或者ip"  
Set conn = Server.CreateObject("ADODB.Connection")
connStr="Provider=SQLOLEDB.1;Password='"&pass_word&"';Persist Security Info=True;User ID='"&User_ID&"';Initial Catalog='"&db&"';Data Source='"&Data_Source&"'"
conn.Open connstr
function CloseDb
Conn.close
Set conn = Nothing
End Function

常見故障

(a)
Microsoft OLE DB Provider for ODBC Drivers 過錯 '80040e57'
[Microsoft][ODBC SQL Server Driver][SQL Server]String or binary data would be truncated.

這是由於資料庫表中欄位的位元組數太小了。

(b)
出錯提醒:
Microsoft OLE DB Provider for ODBC Drivers 過錯 '80040e57'

[Microsoft][ODBC SQL Server Driver][SQL Server]Arithmetic

overflow error for data type smallint, value = 32768.
是由於欄位的類型是smallint太小了應改成int.

(c)
icrosoft OLE DB Provider for ODBC Drivers 過錯 '80040e4d'

[Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user 'user78'.

/index333.asp,行30
資料庫的使用者名稱或密碼不對.

(d)
Microsoft OLE DB Provider for ODBC Drivers 差錯 '80004005'

[Microsoft][ODBC 驅動程式 管理器] 未發明資料來源名稱並且未指定預設驅動程式

/include/conn.asp,行3
這種現象的原由是:1.web伺服器沒有準確設定資料來源,
須要您提供主機名稱和資料庫IP地址,發信件到LIVEPERSON ,為您在伺服器上樹立資料來源,方能正常調用。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.