C#怎么从sql server数据库中随机抽取数据放到数组中去呢?

tiandaosi12 2017-12-18 11:59:56
做课程设计,对C#一片空白,第一次发帖,瑟瑟发抖
...全文
417 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
qaqaqaaaaaa 2020-04-16
  • 打赏
  • 举报
回复
学习总是要有个所以然 复制了 能用了 不理解 有什么用
早起晚睡 2017-12-20
  • 打赏
  • 举报
回复
就是 代码能复制就复制 改成自己的就行了
tiandaosi12 2017-12-19
  • 打赏
  • 举报
回复
引用 4 楼 yenange 的回复:
给一个类似的例子, 你照着改一下就可以了:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;
using System.Data.Common;

namespace ConsoleApplication12
{
    class Program
    {
        static void Main(string[] args)
        {
            string connString = @"Data Source=.\sqlserver2005;Initial Catalog=master;Integrated Security=True";
            string sql = @"SELECT TOP 3 number FROM [master].dbo.spt_values AS sv WHERE sv.[type]='P' ORDER BY NEWID()";
            DataTable dt = new DataTable();
            try
            {
                using (SqlConnection conn = new SqlConnection(connString))
                {
                    conn.Open();
                    SqlCommand cmd = new SqlCommand(sql, conn);
                    SqlDataAdapter adapter = new SqlDataAdapter(cmd);
                    adapter.Fill(dt);
                    Console.WriteLine("执行成功。");
                }

                Console.WriteLine("输出取得的数值:");
                foreach (DataRow dr in dt.Rows) 
                {
                    Console.WriteLine(dr[0].ToString());
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("执行失败:" + ex.Message);
            }

            Console.Read();
        }
    }
}
谢谢大佬,问题已解决,我是这样写的 就是不能直接用dt.Rows[i][0].ToString();我把它的值赋给了label.Text就成功了
tiandaosi12 2017-12-19
  • 打赏
  • 举报
回复
我是这样写的,报错说索引超出数组界限,求大神解答
tiandaosi12 2017-12-19
  • 打赏
  • 举报
回复
吉普赛的歌 版主 2017-12-19
  • 打赏
  • 举报
回复
给一个类似的例子, 你照着改一下就可以了:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;
using System.Data.Common;

namespace ConsoleApplication12
{
    class Program
    {
        static void Main(string[] args)
        {
            string connString = @"Data Source=.\sqlserver2005;Initial Catalog=master;Integrated Security=True";
            string sql = @"SELECT TOP 3 number FROM [master].dbo.spt_values AS sv WHERE sv.[type]='P' ORDER BY NEWID()";
            DataTable dt = new DataTable();
            try
            {
                using (SqlConnection conn = new SqlConnection(connString))
                {
                    conn.Open();
                    SqlCommand cmd = new SqlCommand(sql, conn);
                    SqlDataAdapter adapter = new SqlDataAdapter(cmd);
                    adapter.Fill(dt);
                    Console.WriteLine("执行成功。");
                }

                Console.WriteLine("输出取得的数值:");
                foreach (DataRow dr in dt.Rows) 
                {
                    Console.WriteLine(dr[0].ToString());
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("执行失败:" + ex.Message);
            }

            Console.Read();
        }
    }
}
吉普赛的歌 版主 2017-12-19
  • 打赏
  • 举报
回复
吉普赛的歌 版主 2017-12-19
  • 打赏
  • 举报
回复
引用 5 楼 tiandaosi12 的回复:
谢谢大佬,问题已解决,我是这样写的 就是不能直接用dt.Rows[i][0].ToString();我把它的值赋给了label.Text就成功了
你要这么死脑筋干嘛? 我写好的代码, 你改下连接串和sql就行了呀? 不要固执于自己的思路, 初学程序, 多看人家成熟的代码。

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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