zoukankan      html  css  js  c++  java
  • 数据库: C#使用MySql.Data.6.9.12连接数据库实现增 删 该 查 操作

    准备好测试的数据库

      IP: 47.92.31.46

      用户名: yang

      密码:    11223344.

      数据库名字 :  databasetest

      表格:  userinfo

      

      这是我云端电脑安装的数据库,大家都可以连接测试

      我设置了权限,只可以增删改查数据

    新建工程,安装支持的包

      

      工程右键

      

      

      注意: 咱新建项目的时候选择的是4.0

      这里的版本大于咱的版本了,咱选择旧版安装

      

      

      

       在页面上放一个文本框用于打印连接的信息

      

    API使用

      https://dev.mysql.com/doc/

      

      

      

    连接数据库

                try
                {
                    String connetStr =
                    "server= 47.92.31.46" +//IP地址
                    ";port= 3306" +//端口号
                    ";user =yang" +//用户名
                    ";password=11223344." +//密码
                    ";database =databasetest" +//数据库名称
                    ";charset =utf8";//编码方式
                    MySqlConnection mysql = new MySqlConnection(connetStr);
                    mysql.Open();
                    textBox1.Text = "连接成功";
                }
                catch (Exception err)
                {
                    textBox1.Text = err.ToString();
                }

    测试

      

    插入数据(第一种)

      一,插入数据,id是1,用户名是yang 密码是11223344

     

      "insert into userinfo "+ " values(1,"+"'"+ "yang" +"'"+ "," +"'"+"11223344"+"'"+")";

      insert into userinfo : 插入数据到 userinfo 表格 

      1 :id的值,自动递增

      yang : 用户名

      11223344 :密码

      注:一般插入字符串型数据需要在数据两边加   '    '

      也就是  '数据'

      

                    String sql = "insert into userinfo " + " values(1," + "'" + "yang" + "'" + "," + "'" + "11223344" + "'" + ")";
                    MySqlCommand  mySqlCommand = new MySqlCommand(sql, mysql);
                    mySqlCommand.ExecuteNonQuery();

    运行测试

      

    插入数据(第二种)

      

    String sql = "insert into userinfo "+ " values(NULL,"+"'"+ "yangyang" +"'"+ "," +"'"+"00000000"+"'"+")";

     和上面相比 value(NULL.....)

    设置第一个字段是空,意思是不填写第一个字段(默认就会自动递增)

     

    运行测试

      

    总结上两种插入数据方式

      values里面的值依次填到表格中,如果数据不够,后面的就不插入数据

      

    插入数据(第三种)

      

    String sql = "insert into userinfo (username,password)"+ "values(" +"'"+ "yangyang" +"'"+ "," +"'"+"11111111"+"'"+")";
    (username,password) 后面的values里面的数据对应插到哪个字段里面
    yangyang 插入到 username 字段里面
    11111111 插入到 password 字段里面

    
    

    运行测试

    
    

      

    删除数据

    String sql = "delete from userinfo "+" where "+"username = "+"'"+"yang" +"'";

    删除 userinfo表格中 username字段中是 yang的数据

    意思就是删除,下面这条数据

    运行测试

      

    String sql = "delete from userinfo "+" where "+"username = "+"'"+"yangyang" +"'"+ " and " +"password ="+"'"+"00000000"+"'";

    删除 userinfo表格中 username字段中是 yangyang,同时password字段中是 00000000 的数据

    其实就是删除这个

      

    运行测试

      

    修改数据

      

    String sql = "update userinfo set password="+"'"+"888888"+"'" +"where username="+"'"+"yangyang"+"'";

     找到userinfo表格中username字段值是yangyang的

    然后把 password字段的值修改为 888888

    其实就是把11111111修改为888888

    运行测试

      

    当然也可以直接设置

    String sql = "update userinfo set password="+"'"+"888888"+"'";

    查询数据

                    String sql = "select *from userinfo";//查询表格中的所有数据
    
                    MySqlCommand  mySqlCommand = new MySqlCommand(sql, mysql);
                    MySqlDataReader myReader = mySqlCommand.ExecuteReader();
                    while (myReader.Read())
                    {
                        textBox1.AppendText(myReader.GetInt32(0) + ", " + myReader.GetString(1) + ", " + myReader.GetString(2));
                    }

     测试

      

      

     为直观看到下面的测试增加一个用户名和密码

    查询表格中的所有username字段的值
                    String sql = "select username from userinfo";//查询表格中的所有username字段的值
    
                    MySqlCommand  mySqlCommand = new MySqlCommand(sql, mysql);
                    MySqlDataReader myReader = mySqlCommand.ExecuteReader();
                    while (myReader.Read())
                    {
                        textBox1.AppendText(myReader.GetString(0));
                    }
    
    
    

     运行测试

      

    查询表格中的密码是666666的用户名
    复制代码
                                String sql = "select username from userinfo where password = 666666";//查询表格中的密码是666666的用户名
    复制代码

    运行测试

      

    //查询表格中password是666666的所有数据

    复制代码
                                String sql = "select *from userinfo where password = 666666";//查询表格中password是666666的所有用户信息
    复制代码

    运行测试

      

  • 相关阅读:
    一种 动态 样式 语言. LESS 将 CSS 赋予了动态语言的特性,如 变量, 继承, 运算, 函数. LESS 既可以在 客户端 上运行 (支持IE 6+, Webkit, Firefox),也可以借助Node.js或者Rhino在服务端运行。
    关于jquery选择器的一些注意
    几种序列化协议(protobuf,xstream,jackjson,jdk,hessian)相关数据对比
    测试:你自认为理解了JavaScript?
    如何移除相邻两个 display: inlineblock 元素间的间隔
    Linux TCP 连接数修改
    CSS lineheight 和 verticalalign 精解(上篇)_依然梦想_百度空间
    pageX,clientX,offsetX,layerX的那些事
    在html5下 关于img与div之间的缝隙
    iframe自适应高度详解(希望对大家有用)
  • 原文地址:https://www.cnblogs.com/yangfengwu/p/12190158.html
Copyright © 2011-2022 走看看