qq_40638174
qq_40638174
采纳率40%
2018-05-08 08:23 浏览 1.2k

有关C# DataGridView 显示SQL Server中数据的问题

5

我先把本地音频文件(MP3)存入数据库中,就是将音频数据转化为二进制流存入image类型的表中。然后想使用DataGridView显示出来,部分代码如下: private void button1_Click(object sender, EventArgs e)
{
DataSet ds = new DataSet();
using (SqlConnection conn = new SqlConnection())
{
conn.ConnectionString = "server=localhost;uid=sa;pwd=xjwweijia1210;database=数据菜单";
conn.Open();
using (SqlCommand command = conn.CreateCommand())
{
command.CommandText = "select * from MP3save";
SqlDataAdapter da = new SqlDataAdapter(command);

                try
                {
                    da.Fill(ds);
                }
                catch
                { }
            }
        }
        DataTable dt = new DataTable();
        dt = ds.Tables[0].Copy();

        this.dataGridView1.DataSource = dt;  //绑定到datagridview中显示
                    之后就显示system.argumentexception 参数无效,这个异常。
                    但我换了个数据表(图片存image类型的)就可以显示出图片,不知道为什么,求助!!!!
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

7条回答 默认 最新

  • qq_40638174 qq_40638174 2018-05-08 08:24

    为什么格式成这样了。。不好意思大家将就看。。

    点赞 2 评论 复制链接分享
  • q490007458q 轻松熊喵喵 2018-05-08 08:25

    格式再调整一下比较好一点

    点赞 2 评论 复制链接分享
  • zzm1219 别递烟哥不会 2018-05-08 08:37

    DataGridView的Column也是有类型设定的,猜测是这个问题。

    点赞 1 评论 复制链接分享
  • showbo GoCityPass新加坡曼谷通票 2018-05-08 08:54

    二进制显示不了。。一般都是数据库存文件名,文件保存到硬盘上

    你直接显示个文字就好了吧。。如下载音频什么的,然后连接到一个动态页负责读取数据库二进制数据流输出

    点赞 1 评论 复制链接分享
  • faziwen2 路飞的小蝴蝶 2018-05-08 08:29

    是你参数的问题,解决办法,你可以使用排除法,删除一些前台绑定的字段,慢慢筛选出是哪个绑定的字段有问题

    点赞 评论 复制链接分享
  • uniqueweimeijun uniquewdl 2018-05-08 08:55

    因为你代码好不规范,我也没太看明白,但是建议你可以先将一列数据显示在datatable中,如果这样可以的话,就是你的部分列的问题

    点赞 评论 复制链接分享
  • aimiao1314qq aimiao1314qq 2018-05-08 09:42

    showbo showbo if (score < 60 & score >= 50) "P(Pass)";这里少了个return。。。加上。if (score < 60 & score >= 50)return "P(Pass)"

    点赞 评论 复制链接分享

相关推荐