sql server management studio创建并应用视图

最近实习项目要用到sql server management studio,刚刚学习这个,菜鸟一枚,发现网上很多资料只讲高级应用,像怎么创建怎么使用软件这种白痴问题没有涉及,导致我们这些小菜鸟的学习过程困难重重,本篇博文旨在引导像我一样的初学者入门,高手请绕道。
1.首先我创建了三个table
student表
course表
score

2.创建视图
在View文件夹处右键,新建view,选择要连接的table,这里我选了score表和student表,两个表通过学号Sno相连接,这里我用的是INNER JOIN,关于inner join,left join,right join的区别,请参照我另一篇博客: sql之left join、right join、inner join的区别
这个view抽象出了所有选course1的学生的成绩,姓名,学号。点左上角红色叹号运行,在下面的框中检查结果是否正确,正确的话保存此张试图,命名为course_1.

3.使用视图
打开vs,创建一个控制台工程,在代码中连接这个数据库,并且查询这个视图,查询出所有选course1的最高成绩,代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;//必须引入
using System.Data.SqlClient;//必须引入


namespace Command
{
    class Program
    {
        static void Main(string[] args)
        {
            //构造连接字符串
              SqlConnectionStringBuilder strConn = new SqlConnectionStringBuilder();
              strConn.DataSource =@"你的数据库服务器";
            strConn.InitialCatalog = "你要连得数据库名";
            strConn.IntegratedSecurity = true;

            using (SqlConnection conn = new SqlConnection(strConn.ConnectionString))
            {
                string strSQL = "select Top 1 * From dbo.Course_1_Name";
                SqlCommand cmd = new SqlCommand(strSQL, conn);//使用构造函数方式创建Command对象

                   conn.Open();//记得打开连接
try
                {
                    SqlDataReader reader = cmd.ExecuteReader();//执行ExecuteReader

                    if (reader != null && reader.HasRows)
                    {
                        int rows = 0;//记录行数
                            Console.WriteLine("**********Highest Score of Course_1**********\n");
                        while (reader.Read())
                        {
                            for (int i = 0; i < reader.FieldCount; ++i)
                            {
                                Console.WriteLine("{0}:{1}", reader.GetName(i), reader.GetValue(i));
                            }
                            ++rows;
                        }
                        Console.WriteLine("\n共{0}行记录", rows);
                    }
                    reader.Close();//关闭DataReader
                }
                catch (Exception ex)
                {
                    Console.WriteLine("\nError:\n{0}", ex.Message);
                }
            }
            Console.Read();
        }
    }
}


已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页