在C#中如何对SQL Server数据库进行多表查询的结果显示在窗体上

显示在窗体上dataGridView组件呢用SqlDataAdapter和DataSet创建~... 显示在窗体上dataGridView组件呢 用SqlDataAdapter和 DataSet创建~ 展开
 我来答
dong_1984dd
2015-08-13 · TA获得超过1.1万个赞
知道小有建树答主
回答量:1070
采纳率:100%
帮助的人:228万
展开全部
  1. 多表关联查询与单边查询,对前台来说,都只是一个数据集(DataSet)

  2. 连接字符串的写法:

  3. string connectString = "Data Source=.;Initial Catalog=Student;Integrated Security=True";

  4. SqlConnection对象:

  5. SqlConnection sqlCnt = new SqlConnection(connectString);
    sqlCnt.Open();sqlCnt.Close();

    命名空间:System.Data.SqlClient.SqlConnection;

    返回数据库连接对象,参数字符串。实例化“连接对象”,并打开连接

    使用完成后,需要关闭“连接对象”

  6. SqlCommand command = new SqlCommand();
    command.Connection = sqlCnt;            // 绑定SqlConnection对象

    实例化一个SqlCommand对象

  7. 执行SQLSqlCommand cmd = conn.CreateCommand();              //创建SqlCommand对象
    cmd.CommandType = CommandType.Text;
    cmd.CommandText = "select * from products = @ID";   //sql语句 可以单表也可以多表关联,

  8. cmd.Parameters.Add("@ID", SqlDbType.Int);
    cmd.Parameters["@ID"].Value = 1;                    //给参数sql语句的参数赋值

  9. SqlCommand cmd = conn.CreateCommand();                     
    cmd.CommandType = System.Data.CommandType.StoredProcedure;
    cmd.CommandText = "存储过程名";

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友279ed92
2011-09-28 · TA获得超过215个赞
知道小有建树答主
回答量:152
采纳率:0%
帮助的人:94万
展开全部
private DataSet ds = null;
private DataSet LinkDB(string database, string sqlobj)
{
try
{
string constr = "Data Source = ibmser;Database = MasterPDM; User ID =sa; PWD =";
SqlConnection con = new SqlConnection(constr);
con.Open();
string sqlstr = sqlobj;
SqlDataAdapter sqldataadapter = new SqlDataAdapter(sqlstr, con);
DataSet ds = new DataSet();
sqldataadapter.Fill(ds);
con.Close();
return ds;
}
catch (Exception e)
{
Console.WriteLine(e.Message);
return null;
}
}
把上面的代码粘贴进去,把数据库连接字符串改成自己的,然后在BUTTON等控件上写这样的代码 StringBuilder sqlstr = new StringBuilder();
sqlstr.Append("楼主的查询语句'"+this.textBox1.Text+"' ");

ds = this.LinkDB(this.dataGridView1.Text, sqlstr.ToString());
this.dataGridView1.DataSource = ds.Tables[0];
我是直接把我的代码复制过来了,楼主自己参照着改一下就行了。楼主自己分析一下吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
345514256
2011-09-28 · 超过56用户采纳过TA的回答
知道小有建树答主
回答量:259
采纳率:0%
帮助的人:143万
展开全部
用存储过程啊,或者视图多方便,联合查询就是拼SQL语句 容易出乱
追问
谢谢了  你的提示挺不错的  能多介绍下视图吗?
追答
视图就是一张虚拟的表 实际是不存在的 但是他可以把你想要的数据查询出来放到一张表里去
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友167dbbf8e
2011-09-28 · 超过10用户采纳过TA的回答
知道答主
回答量:66
采纳率:0%
帮助的人:24.8万
展开全部
SqlDataBulider
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式