首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OleDbDataReader错误

OleDbDataReader错误
EN

Stack Overflow用户
提问于 2013-07-10 16:00:53
回答 1查看 166关注 0票数 0

我正在试图保存一个txt文件,其中包含已付费的人的联系人号码,但我收到了一个错误,指出

"OleDbDataReader dbReader = cmd.ExecuteReader()“

说“标准表达式中的数据类型不匹配”。我认为这是SELECT语句导致问题的原因,在access way中是Yes/No数据类型,选择数据的正确方式是什么?

代码语言:javascript
复制
 try
        {
            string connString = (@"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=|DataDirectory|DB.mdb");
            OleDbConnection conn = new OleDbConnection(connString);
            conn.Open();
            OleDbCommand cmd = conn.CreateCommand();
            cmd.CommandText = @"SELECT [CellNumber] FROM [Users] WHERE [Paid] = '1'";
            OleDbDataReader dbReader = cmd.ExecuteReader();

            StreamWriter sw = new StreamWriter("E:/Contacts.txt");
            while (dbReader.Read())
            {
                sw.WriteLine(cmd.ExecuteScalar().ToString());
            }
            sw.Close();
            dbReader.Close();
            conn.Close();

        }
        catch (OleDbException abc) 
        {
            errorLabel.Text = abc.ToString();
        }
EN

回答 1

Stack Overflow用户

发布于 2013-07-10 16:10:35

[Paid]列是非字符串类型,因此尝试删除单引号:

代码语言:javascript
复制
cmd.CommandText = @"SELECT [CellNumber] FROM [Users] WHERE [Paid] = 1";

一如既往,在适当的情况下使用参数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17575486

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档