数据库的连接以及实现控制台对对数据的增删查改

来源:互联网 发布:武林外传细思极恐 知乎 编辑:程序博客网 时间:2024/05/16 11:56

举了四个连接数据库的简单例子,(其中有注释与解析)

1、接下来是第一个往数据库里添加数据:

 static void Main(string[] args)     

        {
            #region 数据库添加数据                                        //用户键入数据,传给变量
          /*  Console.Write("请输入用户名:");
            string user = Console.ReadLine();
            Console.Write("请输入密码:");
            string password = Console.ReadLine();
            Console.Write("请输入真实姓名:");
            string real = Console.ReadLine();
            Console.Write("请输入手机号:");
            string mobile = Console.ReadLine();
            Console.Write("请输入地址:");
            string address = Console.ReadLine();
            Console.Write("请输入Card:");
            string card = Console.ReadLine();
             string sqlconn = "Data Source=WANGJIAN-PC;Initial Catalog=BookDB1;User ID=sa;Password=abcdef";  //这里才是真正的连接服务器。
             SqlConnection conn = new SqlConnection(sqlconn);
             conn.Open();                                                                               //创建对象打开服务器
             SqlCommand com = conn.CreateCommand();
             com.CommandText = "insert into T_USer                                values(@username,@password,@realname,@mobile,@address,@card)";     //编辑需要对数据库操作的命令
             com.Parameters.AddWithValue("@username", user);                                   //变量里的数据传给占位符
             com.Parameters.AddWithValue("@password", password);
             com.Parameters.AddWithValue("@realname", real);
             com.Parameters.AddWithValue("@mobile", mobile);
             com.Parameters.AddWithValue("@address", address);
             com.Parameters.AddWithValue("@card", card);
             com.ExecuteNonQuery();                                                                       //开始执行命令
             com.Dispose();                                               
             conn.Close();                                                                                    //执行操作后关闭服务器如果不关闭连接,这个操作标识就会永远存在,消耗服务器资源。特别是有海量数据存取的时候,对服务器性能的影响相当巨大。及时关闭数据库操作链接是数据优化提高网站系统性能重要方面。

             conn.Dispose();
             Console.WriteLine("添加成功!!");
             Console.Read();*/

            #endregion

2、删除数据中的数据

            #region 删除数据库中的数据
          /*  Console.Write("请输入需要删除的Id:");
            int id;
            int.TryParse(Console.ReadLine(),out id);
            string sqlconn = "Data Source=WANGJIAN-PC;Initial Catalog=BookDB1;User ID=sa;Password=abcdef";
            SqlConnection conn = new SqlConnection(sqlconn);
            conn.Open();
            SqlCommand com = conn.CreateCommand();
            com.CommandText = "delete from T_User where Id=@id";
            com.Parameters.AddWithValue("@id", id);
            com.ExecuteNonQuery();
            Console.WriteLine("删除成功!");
            com.Dispose();
            conn.Close();
            conn.Dispose();
            Console.Read();*/

             #endregion

3、查询数据库中的数据,这里用了两个做法,不过原理都一样,一个用了双重循环,但是给不了一个别名,一个直接写的下标

             #region 查询数据库
             /*  string sqlconn = "Data Source=WANGJIAN-PC;Initial Catalog=BookDB1;User ID=sa;Password=abcdef";
            SqlConnection conn = new SqlConnection(sqlconn);
            SqlCommand cmd = conn.CreateCommand();
            cmd.CommandText = "select * from T_USer";
            SqlDataAdapter adapter = new SqlDataAdapter(cmd);
            DataTable dt = new DataTable();
            adapter.Fill(dt);
            for (int i = 0; i < dt.Rows.Count; i++)                                                //!!注意在写查询语句的时候不要字段拼接,否则会出现注入漏洞
            {
                Console.WriteLine("ID:{0}用户姓名:{1}密码:{2}真实姓名:{3}手机:{4}地址:{5}Card{6}",dt.Rows[i][0],dt.Rows[i][1], dt.Rows[i][2], dt.Rows[i][3], dt.Rows[i][4], dt.Rows[i][5], dt.Rows[i][6]);
            //    for (int j = 0; j < dt.Columns.Count; j++)                                   //这是双重循环的,但已经被注释掉了
            //{
            //    string id = dt.Rows[i][j].ToString();
            //    string id1 = dt.Rows[i][j].ToString();
            //    string id2 = dt.Rows[i][j].ToString();
            //    string id3 = dt.Rows[i][j].ToString();
            //    string id4 = dt.Rows[i][j].ToString();
            //    string id5 = dt.Rows[i][j].ToString();
            //    string id6 = dt.Rows[i][j].ToString();
            //    Console.WriteLine(id, id1, id2,id3,id4,id5,id6);
            //}


            }*/

            #endregion

4、控制台修改数据库中的数据

            #region 修改数据库中的数据
           /* Console.Write("请输入修改用户名的Id:");
            int id;
            int.TryParse( Console.ReadLine(),out id);
            Console.Write("请输入你修改的用户名:");                            //同样也是键入数据,
            string name=Console.ReadLine().ToString();
            string sqlconn = "Data Source=WANGJIAN-PC;Initial Catalog=BookDB1;User ID=sa;Password=abcdef";
            SqlConnection conn = new SqlConnection(sqlconn);
            conn.Open();
            SqlCommand com = conn.CreateCommand();
            com.CommandText = ("update T_User set UerName=@username where Id=@id");      //操作命令增加限制条件,限制需要修改的字段。
            com.Parameters.AddWithValue("@id", id);
            com.Parameters.AddWithValue("@username", name);
            com.ExecuteNonQuery();
            Console.WriteLine("修改成功!");
            com.Dispose();
            conn.Close();
            conn.Dispose();*/
            Console.Read();
            #endregion       

        }

      小结:总之连接数据库格式为:

Const SqlDatabaseName = "数据库名"

Const SqlPassword = "用户密码"

Const SqlUsername = "用户名"

Const SqlLocalName = "(local)"

dim conn 

set conn=server.createobject("ADODB.connection") 

conn.open "Provider=Sqloledb;User ID="&SqlUsername&";Password="&SqlPassword&";Initial Catalog="&SqlDatabaseName& ";Data Source="&SqlLocalName&";"
(如有错误,欢迎修改)

原创粉丝点击