ruby读取数据库时中文不能正常显示?

问题描述

数据库是ms sql2000,有张数据库表a, 字段如下: a b 1 数学 2 语文 ruby代码: require "dbi" dbh=DBI.connect('DBI:ADO:Provider=SQLOLEDB;Connect Timeout=5;DataSource=localhost;Initial Catalog=cs;Persist SecurityInfo=True;User ID=sa;Password=sa;') sth=dbh.prepare("select * from a ") sth.execute while row=sth.fetch do p row end 显示的结果会: >ruby db.rb ["1 ", "312375321247 "] ["2 ", "323357316304 "] >Exit code: 0 怎么都变成数字了。问题补充:那怎么让他转成中文?我在SciTE测试的,就要利用上面的代码。

解决方案

此数字是汉字unicode的表示。

时间: 2024-08-02 15:56:00

ruby读取数据库时中文不能正常显示?的相关文章

asp 读取数据库-asp编写的网页,读取数据库时,找不新建的表中数据,rs.eof 为真(此网页可读取别的表中的数据)

问题描述 asp编写的网页,读取数据库时,找不新建的表中数据,rs.eof 为真(此网页可读取别的表中的数据) <% size=request("size") c1=request("case") if size="" then size=20 end if n=1 title=trim(request("title")) action=request("action") sh=request(&qu

ASP实现让数据库连接仅在需要读取数据库时打开

数据|数据库|数据库连接    细心的开发人员有时会想到,我们在一个需要读写数据库的页面里包含类似<!-- #include file="conn.asp" -->的代码时,实际上,当你没有进行任何读写数据库操作时,这个数据库连接仍然是打开的,仍然在消耗着服务器的资源.      那么,我们有没有办法让数据库连接仅在需要读取数据库时才打开,不读取时就没有任何动作呢,以下即提供这种思路,以求抛砖引玉.      这种思路即是将数据库连接代码封装在函数里,在需要读取时调用这个函

解决用jConnect连接Sybase数据库时中文乱码的问题

确保数据库使用中文字符集,如 eucgb, utf8, cp936, 同时, 在 jconnect 编程时设定必要的连接属性, 包括 charset (要求与数据库保持一致) 和 jconnect_version. 例如: jconnect 4.2: jdbc:sybase:Tds:hostname:port/dbname?charset=eucgb&jconnect_version=4 jconnect 5.2: jdbc:sybase:Tds:hostname:port/dbname?cha

Php解决读取数据库时显示乱码

首先需要修改文件的类型 我的utf8 提交资料的时候 需要在mysql_query上加这么语句话  代码如下 复制代码 mysql_query("SET NAMES 'utf8'",$db);     然后数据库的编码也得是utf8_general_ci   然后在读取的时候 也加  代码如下 复制代码 mysql_query("SET NAMES 'utf8'",$db);      然后就不会实现乱码了 以下代码是是实例  代码如下 复制代码 <?php

mysql-我的MYSQL数据库总是中文乱码

问题描述 我的MYSQL数据库总是中文乱码 _我的MYSQL数据库总是中文乱码,我已经把编码调为utf8了 解决方案 你安装MySQL的时候是不是选择的utf-8哟 解决方案二: 是程序写入乱码?请问数据的来源~ 解决方案三: 如果是表内存储字段内容乱码,那就是输入的代码编码与数据库中的编码不一致:如果是读取数据库时显示乱码,那就设定输出的编码. 解决方案四: 应该是程序和数据库直接操作引起的,比如JDBC连接时设置为utf-8试试 解决方案五: 我也遇到过你这种问题,试了N种方法都不行,最后没

WE8DEC字符集下,网页中中文无法正常显示,求助

问题描述 通过程序将数据库中A中的数据写入B数据库,A所在服务器的字符集是WE8DEC(AMERICAN),B所在服务器的字符集是ZHS16GBK,写入B数据库后数据中中文显示为乱码,后将B所在服务器字符集也改为WE8DEC后在数据库中中文能正常显示,但通过WEB页面查询B数据库中的数据时所有中文仍显示为乱码,不知何故?谁知道怎么解决阿?万分感谢!!! 解决方案 解决方案二:不知道楼主解决了吗??

sqlite-android读取手机联系人并在textview中显示名字时中文乱码怎么解决?

问题描述 android读取手机联系人并在textview中显示名字时中文乱码怎么解决? android读取手机联系人并在textview中显示名字时中文乱码怎么解决?从数据库里来的中文的全变成"?"了,其他的正常. 解决方案 new String(lCursor.getBlob(indexName), "UTF-8").replace("", "").replace("r", "");

java-当用JDBC向数据库中插入数据或从数据库中提取数据时,为何有时中文字符会显示为乱码?

问题描述 当用JDBC向数据库中插入数据或从数据库中提取数据时,为何有时中文字符会显示为乱码? 当用JDBC向数据库中插入数据或从数据库中提取数据时,为何有时中文字符会显示为乱码? 怎么才能解决问题,跟jdbc driver Manager的设置有关系吗? 解决方案 数据库字符集 与 页面编码 都使得 是 uft-8?得统一 解决方案二: 建议编码格式采用UTF-8的格式 解决方案三: 在使用数据的每一个节点上,其编码方式必须要一致否则就会出现乱码.特别是使用MySQL时,客户端,连接器.数据库

jdbc在读取access数据库中中文数据时出现的字符长度错误问题

问题描述 在进行java连接access数据库进行读取数据的时候原有数据限制了长度为varchar(12)在officeaccess界面直接输入了12个中文汉字但是在读取进入java后变成了原来的一半java工程字符集配置是utf-8在读取的时候设置了连接的参数字符集为GBK将java项目字符集改成GBK同样会出现这个问题请问一下有没有人知道为什么会出现这种情况并且如何解决注:同样条件下mysql就没有问题是不是access记录在写的时候按中文的字符长度算的在读取到java后按照字节的长度算的所