access数据库转sql数据库后conn.asp里的连接数据库该怎么该

这是我的conn.asp的代码应该怎么改呢?<%@LANGUAGE=VBScriptCodePage=936%><%OptionExplicitResponse.Buff... 这是我的conn.asp的代码应该怎么改呢?
<%@ LANGUAGE = VBScript CodePage = 936%><%
Option Explicit
Response.Buffer = True
Dim conn,db,prefix,timeset,connstr,time1,onlinetime,rs
prefix="nt80_zym"
Server.ScriptTimeout=40
timeset=0 '时区相对东八区(北京时间)
onlinetime=1 '保存用户在线的时间(小时)。
db="db/nt80_6k.asp"
set conn=Server.CreateObject("ADODB.Connection")
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.mappath(db)
conn.open connstr
Sub closedb
conn.close
Set conn = nothing
End Sub
%>
在问一下除了conn.asp以外还需要改些什么 例如查询语句结构什么的
组后一个问题 能否把完整的conn.asp写一下么我是新手
展开
 我来答
mngenius
2006-12-21 · TA获得超过3165个赞
知道大有可为答主
回答量:2192
采纳率:0%
帮助的人:0
展开全部
数据修改
1,由于SQL2000里面没有“自动编号“,所以你的以“自动编号“设置的字段都会变成非空的字段,这就必须手工修改这些字段,并把他的“标示“选择“是“,种子为“1“,增量为“1“,
2,另外,ACCESS2000转换成SQL2000后,原来属性为“是/否“的字段将被转换成非空的“bit“,这时候你必须修改成自己想要的属性了;
3,另外,大家要注意对时间函数的把握.ACCESS与SQL是有很多不同的.

ACCESS改为SQL需要注意哪几个地方

数据库导入以后,自动增加字段需要重写,所有的数字类型需要增加长度,最好用decimal。

所有的默认值都丢失了。主要是数字类型和日期类型。

所有now(),time(),date()要改成getdate()。

所有datediff(‘d‘, time1, time2)要改成datediff(day, time1, time2)

有可能一些true/false类型不能使用,要变为1/0。

备注类型要通过cast(column as varchar)来使用。

CursorType要改成1,也就是打开数据库时要给出第一个数字参数为1,否则记录可能显示不完整。

isnull(rowname)要改成rowname = null

ACCESS的数据库中的自动编号类型在转化时,sql server并没有将它设为自动编号型,我们需在SQL创建语句中加上identity,表示自动编号!

转化时,跟日期有关的字段,SQL SERVER默认为smalldatetime型,我们最好将它变为datetime型,因为datetime型的范围比smalldatetime型大。有时用smalldatetime型时,转化失败,而用datetime型时,转化成功。

对此两种数据库进行操作的sql语句不全相同,例如:在对ACCESS数据库进行删除纪录时用:“delete * from user where id=10“,而对SQL SERVER数据库进行删除是用:“delete user where id=10“.

日期函数不相同,在对ACCESS数据库处理中,可用date()、time()等函数,但对SQL SERVER数据库处理中,只能用datediff,dateadd等函数,而不能用date()、time()等函数。

在对ACCESS数据库处理中,sql语句中直接可以用一些VB的函数,像cstr()函数,而对SQL SERVER数据库处理中,却不能用。

ACCESS转SQL SERVER的数据库的几点经验

1.ACCESS的数据库中的自动编号类型在转化时,sql server并没有将它设为自动编号型,我们需在SQL创建语句中加上identity,表示自动编号!
2.转化时,跟日期有关的字段,SQL SERVER默认为smalldatetime型,我们最好将它变为datetime型,因为datetime型的范围比smalldatetime型大。我遇见这种情况,用smalldatetime型时,转化失败,而用datetime型时,转化成功。
3.对此两种数据库进行操作的sql语句不全相同,例如:在对ACCESS数据库进行删除纪录时用:“delete * from user where id=10“,而对SQL SERVER数据库进行删除是用:“delete user where id=10“.
4.日期函数不相同,在对ACCESS数据库处理中,可用date()、time()等函数,但对SQL SERVER数据库处理中,只能用datediff,dateadd等函数,而不能用date()、time()等函数。
5.在对ACCESS数据库处理中,sql语句中直接可以用一些VB的函数,像cstr()函数,而对SQL SERVER数据库处理中,却不能用。
畅利文QV
2006-12-21 · TA获得超过2115个赞
知道小有建树答主
回答量:416
采纳率:0%
帮助的人:487万
展开全部
strconn = "Driver={SQL Server};Description=sqldemo;SERVER=localhost;"&"UID=sa;Password=;DATABASE=db1"
set conn = server.createobject("adodb.connection")
conn.open strconn
set rs = conn.execute("select * from table1")
rs.Close
conn.Close

--------------------

补充:

查询语句一般不需要改,如果遇到问题再改

用上面的连接代码替换你access的连接代码应该就可以了,你的conn.asp代码,我们可没有噢...
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
keystudio
2006-12-21 · TA获得超过1893个赞
知道小有建树答主
回答量:750
采纳率:100%
帮助的人:446万
展开全部
connstr="Driver={SQL Server};Server="&IP&";Database="&DATANAME&";Uid="&UNAME&";Pwd="&PASSWORD&";"

----------------------
查询语句没什么区别
但是其他的还是有一些区别
比如SQL里的取当前时间函数getdate()和ACCESS不一样
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式