我要把“视图goodsTrans”中的内容,提交到web 页面(通过html 表单的形式),由客户进行更新,然后,把更新的内容,update 视图的基本 provider表中,最后自动更新视图goodsTrans。为此,做了以下代码:
set rs = server.createobject("adodb.recordset")
    sql = "SELECT top 10 id,yuancd,* FROM goodsTrans where uid='"&session("myuid")&"' and todaypriceid>0"
    sql=sql&"  order by todaypriceid desc,hidden desc,pinm,guig"
    rs.open sql,zgw_conn,1,1
    
    while not rs.EOF and per>0
        。
        rs.MoveNext
    wend在这个循环里面镶嵌了 HTML 的表单代码:
<INPUT type="text" id=produceArea name=produceArea value="<%=trim(rs("yuancd"))% >" style="WIDTH: 60px; HEIGHT: 22px">
以供客户更改yuancd 等字段;
   
  1、在运行这段代码之前,我先在SQL Server 查询器中查看:视图和基表中所有字段数据的汉字正常显示,包括字段[yuancd]字段中的“首钢”二字;
  2、运行这段代码,提取视图中很多字段的值,显示在Web网站 HTML 表单中。此时,字段yuancd中“首钢”的汉字显示全部正常;
  3、当通过 input 表单,点击修改,这些正常的字段按照设计变成了表单方框,允许修改新值;此时在WEB HTML 表单中汉字显示还是正常的;
   
  4、但是,当用Visual Studio 跟踪发现:此时,rs("yuancd")的值“首钢”二字,已经变成了“□□□”乱码(其他字段的值是正常的。特别说明:其他表单的代码,与此表单一模一样);
  5、然后,当网民在HTML表单方框中,不管是否做了修改,点击提交后,运行以下代码:
caizhi=trim(request("caizhi"))
produceArea=trim(request("produceArea"))
price=trim(request("price"))
id=trim(request("id"))
openconn()
cmd="select * from provider where goodsid="&id
set rs = server.createobject("adodb.recordset")
rs.open cmd,ZGW_Conn,1,3
if md1<>"rpt" then
    rs("GoodsMaterial")=caizhi
    rs("GoodsProductor")=produceArea
    rs("GoodsPrice")=price
end if
rs("hidden")="0"
rs("sortDate")=now()
rs.Update6、当用Visual Studio 跟踪发现:此时,produceArea=trim(request("produceArea"))的值,本来应该是“首钢”二字,现在已经变成了“□□□”乱码(奇怪的是:其他字段的值是正常的。
  等到这段代码运行完,查看得到:“首钢”二字,成为乱码。乱码显示为:
  ·在WEB HTML 的前台显示成为"???"   
  ·再在在SQL Server 查询器中看:后台数据库“基本表 provider”和“视图goodsTrans”中的汉字数据显示为“□□□”
  7、而我再在SQL Server 查询器中再进行手工update修改,又可以正常恢复为:正常的汉字“首钢”。  所以,SQL数据表中的数据汉字,被HTML 表单方框调用后,成了乱码!!!