高手看过来,模糊搜索日文时出现的问题。

dl_hum 2007-02-11 01:54:16
代码如下:

dim conn, strconn
strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & Server.MapPath("db.mdb")
set conn = server.createobject("adodb.connection")
conn.open strconn

set rs = server.createObject("adodb.recordset")
sql = "select * from table where title like '%标题%'"
rs.open sql,conn,1,1
while not rs.eof
response.write(rs("title")&"<br>")
rs.movenext
wend

rs.close
conn.close
set conn=nothing

平常的时候运行的挺正常的,
但当我的数据库中存入日文的时候,就出现下面的错误信息:

Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e21'
ODBC 驱动程序不支持所需的属性。

不知道那位高手能帮忙解决一下。
...全文
227 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
IT_zen 2007-02-11
  • 打赏
  • 举报
回复
多国语言记得要用unicode类型
IT_zen 2007-02-11
  • 打赏
  • 举报
回复
可能是你title列的类型不是unicode类型
作如下修改:
char->vchar
varchar->nvarchar
text -> ntext

OracleRoob 2007-02-11
  • 打赏
  • 举报
回复
--访问本地MDB的ADO连接串:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Test.MDB;User ID=admin;Password=;Jet OLEDB:Database Password=000

其中第一个password为Access的用户admin的密码,第二个为Access数据库的密码
如果未设置数据库密码,可省略此项。


--ADO连接串(访问网络MDB):

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\服务器名或IP\共享目录\Test.MDB;User ID=admin;Password=;Jet OLEDB:Database Password=;

其中第一个password为Access的用户admin的密码,第二个为Access数据库的密码
如果未设置密码,可省略相关项。
OracleRoob 2007-02-11
  • 打赏
  • 举报
回复
--ADO连接串:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Test.MDB;User ID=admin;Password=;Jet OLEDB:Database Password=000

其中第一个password为Access的用户admin的密码,第二个为Access数据库的密码

如果未设置数据库密码,可省略此项。


OracleRoob 2007-02-11
  • 打赏
  • 举报
回复
使用ADO串。


Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Test.mdb;User ID=admin;Password=;Jet OLEDB:Database Password=1
zheninchangjiang 2007-02-11
  • 打赏
  • 举报
回复
i don't know how to do with access db,sorry

zheninchangjiang 2007-02-11
  • 打赏
  • 举报
回复
select * from table where title like '%标题%'select * from table where title like N'%标题%'

use unicode

22,206

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧