初学C#--6

来源:互联网 发布:tempo软件 编辑:程序博客网 时间:2024/06/02 05:35

SQl server数据库(三):参数话查询

1.通过参数进行查询

using System;using System.Data.SqlClient;namespace ParameterQuery{    class Program    {        //数据库连接字符串、根据实际修改(AttachDbFilename为数据库文件URL地址;不同数据库参数不同)        private const string ConnectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\EncodeFiles.mdf;Integrated Security=True;Connect Timeout=30";        static void Main(string[] args)        {            //获取用户输入的内容            Console.WriteLine("请输入用户名");            string name = Console.ReadLine();            Console.WriteLine("请输入密码");            string password = Console.ReadLine();            //进行SQL参数查询            using (SqlConnection Conn = new SqlConnection(ConnectionString))            {                Conn.Open();//打开数据库                using (SqlCommand Cmd = Conn.CreateCommand())                {                    Cmd.CommandText = "select * from users where username=@UN and password=@PWD";                    //将name的数据赋值给查询语句中的UN                    Cmd.Parameters.Add(new SqlParameter("UN", name));                    //将password的数据赋值给查询语句中的PWD                    Cmd.Parameters.Add(new SqlParameter("PWD", password));                    if (Cmd.ExecuteScalar() != null)                        Console.WriteLine("登陆成功!");                    else                        Console.WriteLine("登陆失败!");                }            }            Console.ReadKey();//防止控制台程序一闪而过、而看不到输出结果        }    }}


2.通过参数进行添加数据

using System;using System.Data.SqlClient;namespace ParameterQuery{    class Program    {        //数据库连接字符串、根据实际修改(AttachDbFilename为数据库文件URL地址;不同数据库参数不同)        private const string ConnectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\EncodeFiles.mdf;Integrated Security=True;Connect Timeout=30";        static void Main(string[] args)        {            //获取用户输入的内容            Console.WriteLine("请输入用户名");            string name = Console.ReadLine();            Console.WriteLine("请输入密码");            string password = Console.ReadLine();            //进行SQL参数查询            using (SqlConnection Conn = new SqlConnection(ConnectionString))            {                Conn.Open();//打开数据库                using (SqlCommand Cmd = Conn.CreateCommand())                {                    Cmd.CommandText = "insert uers(username,password) value(@UN,@PWD)";                    //将name的数据赋值给查询语句中的UN                    Cmd.Parameters.Add(new SqlParameter("UN", name));                    //将password的数据赋值给查询语句中的PWD                    Cmd.Parameters.Add(new SqlParameter("PWD", password));                    if (Cmd.ExecuteNonQuery() > 0)                        Console.WriteLine("添加成功!");                    else                        Console.WriteLine("添加失败!");                }            }            Console.ReadKey();//防止控制台程序一闪而过、而看不到输出结果        }    }}

3.总结

a)由上面两个例子看出,进行查询,添加数据,也只是SQL语句不一样而已,同理其他更新、删除等查询就SQL语句和参数的多少的问题,所以参数查询就是在SQL里面      加入一些可以后面加入的参数;

b)用select语句进行查询的时候不要用ExecuteNonQuery进行判断修改数据条数,select语句的返回值只能是“-1”(不对数据进行操作的返回值一般都是“-1”),所以可以      用ExecuteScalar判断返回值是否为空,来进行判断查询是否成功。

0 0
原创粉丝点击