晕,高手们怎么都不回啊~~求助!!!
有个后台是access的,要改成sql的,如下:
1.acess
.......
set rsc=server.CreateObject( "adodb.recordset ")
sqlc= "select * from newscata where id is null "
rsc.open sqlc,conn,1,3
rsc.addnew
rsc( "title ")= addtitle
rsc( "level ") = alevel + 1
rsc( "time ") = now()
if arootid = " " then
rsc( "rootid ") = "* "
else
rsc( "rootid ") =arootid& ",* "
end if
rsc.update
gid = rsc( "id ")
groot = rsc( "rootid ")
c_groot = replace(groot, "* ",gid)
rsc( "rootid ") =c_groot
rsc.update
rsc.close
set rsc=nothing
意思就是增加一个栏目 数据库有个字段是rootid的是表示栏目
比如建一个新根目录 id=2 那么数据库里 rootid=2 然后在这个目录里建个2级子目录,则rootie=2,1 …………
大概就是这个意思,大家注意下*号
2:sql 栏目还是可以建,但是会显示“不能为新插入的行确定标识。”
返回目录管理里能看到刚建的栏目,但是数据库里这个栏目中的rootid 却是*
也就是gid = rsc( "id ")
groot = rsc( "rootid ")
c_groot = replace(groot, "* ",gid)
rsc( "rootid ") =c_groot
rsc.update这个根本没有执行
期待中………………
------解决方案--------------------帮顶!!
------解决方案--------------------真的看不懂你的意思,你把newscata的结构发过来看一下,是不是让我们更易理解
如下形式:
表名:newscata
title varchar(30) 标题
level int 级别
time smalldatetime **时间
rootid int 上级目录id
------解决方案--------------------也许是你的sql数据库的id列没有被设置自动标识,如果是access导入过来的数据表就会这样。
------解决方案--------------------很简单, 你的ID不是自动增量+1的