Asp.net 将Access数据库迁移到SQLServer时,我应该在代码中更改什么?
我有一个使用access数据库的网站,我想更改与SQL Server DB的连接,我用SQL Server迁移数据库,但是我必须更改连接代码和SQL请求 这是我在代码中的一个副本(我使用WebMatrix): pageConn.asp:Asp.net 将Access数据库迁移到SQLServer时,我应该在代码中更改什么?,asp.net,sql-server,sql-server-2008,webmatrix,webmatrix-2,Asp.net,Sql Server,Sql Server 2008,Webmatrix,Webmatrix 2,我有一个使用access数据库的网站,我想更改与SQL Server DB的连接,我用SQL Server迁移数据库,但是我必须更改连接代码和SQL请求 这是我在代码中的一个副本(我使用WebMatrix): pageConn.asp: <% Dim conn,connstr,Clkj_mdb Clkj_mdb="/DaTa/#Clkj_Cms#.mdb" connstr="DBQ="+server.mappath(""&Clkj_mdb&"")+";De
<% Dim conn,connstr,Clkj_mdb
Clkj_mdb="/DaTa/#Clkj_Cms#.mdb"
connstr="DBQ="+server.mappath(""&Clkj_mdb&"")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
on error resume next
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
if err then
err.clear
set conn=nothing
response.write "Connect Error!"
response.End
End IF
%>
我应该在这部分也做些改变吗
Class.asp:
<% If request.querystring("Edit")="B_E" Then
Set Rs=server.createobject("ADODB.Recordset")
Sql="select * from clkj_BigClass where clkj_BigClassID ="&request("clkj_BigClassID")
Rs.open Sql,conn,1,1
%>
谢谢你抽出时间 在这种情况下,不需要对SQL进行任何更改,但需要更改连接字符串。您可以在此处找到示例连接字符串: 这样的事情应该可以做到:
connstr = "Provider=sqloledb;Data Source=<name of server>;Initial Catalog=<name of database>;User Id=<user id>;Password=<password>"
connstr=“Provider=sqloledb;数据源=;初始目录=;用户Id=;密码=”
展望未来,JET SQL(Access)和T-SQL(SQL Server)之间的主要区别是:
不能在T-SQL中的DELETE语句中使用*:DELETE*From MyTable
在SQL Server中变成DELETE From MyTable
Access中的“是/否”列将成为SQL Server中的位字段。在SQL Server中,True由1表示,而不是Access中的-1
如果在JET SQL中使用#作为日期的分隔符,则必须在T-SQL中将其更改为单引号。我应该做什么来代替此变量:Clkj#u mdb
Clkj_mdb=“/DaTa/#Clkj_Cms#.mdb”
Nothing。它只是一个文件的路径。SQL Server连接字符串不需要路径。但此变量用于其他页面,如:
包含文件路径的变量Clkj_mdb用于另一个asp页面:
我应该做什么来代替此变量?我不知道应用程序需要它做什么,所以我无法回答这个问题。