关于用C#获取access数据库表中数字类型的字段问题。

我现在有一个函数,如下图:privatevoidload(stringpath){richTextBox1.Clear();stringsql="selectconten... 我现在有一个函数,如下图:
private void load(string path)
{
richTextBox1.Clear();
string sql = "select content from [songlist] where id=" + id;
string connstr = "Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=" + path;
OleDbConnection conn = new OleDbConnection(connstr);
OleDbCommand cmd = new OleDbCommand(sql, conn);
conn.Open();
cmd.ExecuteNonQuery();
using (OleDbDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection))
{
if (reader.HasRows)
{
if (reader.Read())
{
richTextBox1.Text = reader["content"].ToString();
}
else
{
richTextBox1.Text = "未读取到歌词内容.";
}
}
reader.Close();
conn.Close();
}
}
并且有一个数据库表,类型如下:

我现在想做的工作是,将void函数修改一下,可以返回一个int值,该值为数据库表中的songtype字段的值,如:1,2,3,4。请问该如何修改代码?
展开
 我来答
玩转数据处理
推荐于2016-05-21 · 数据处理,Python,dotnet
玩转数据处理
采纳数:1613 获赞数:3794

向TA提问 私信TA
展开全部
private int load(string path)
{
    int songtype=0;
    richTextBox1.Clear();
    string sql = "select songtype from [songlist] where id=" + id;
    string connstr = "Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=" + path;
    OleDbConnection conn = new OleDbConnection(connstr);
    OleDbCommand cmd = new OleDbCommand(sql, conn);
    conn.Open();
    cmd.ExecuteNonQuery();
    using (OleDbDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection))
    {
        if (reader.HasRows)
        {
       songtype = Convert.ToInt32( reader["songtype"]);
        }
        reader.Close();
        conn.Close();
    }
    ruturn songtype;
}
更多追问追答
追问

我按照你的代码修改过后,下断点调试,结果出现这样的错误..

追答
你有按照我的代码修改??你好好看看
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式