学习mysql

Posted 白纸菇凉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习mysql相关的知识,希望对你有一定的参考价值。

---恢复内容开始---

数据库 增删改查

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 using mysql.Data.MySqlClient;
 7 namespace mysql
 8 {
 9     class Program
10     {
11         static void Main(string[] args)
12         {
13             string conMsc = "Database=test;Data Source=127.0.0.1;port=3306;User Id=root;Password=root";
14             MySqlConnection msc = new MySqlConnection(conMsc);
15             msc.Open();//打开
16 
17             //  Insert(msc);//18             // Delete(msc);//
19             Upadate(msc);//
20             Select(msc);//
21             msc.Close();
22         }
23         public static void Upadate(MySqlConnection cnn)
24         {
25             MySqlCommand cmd = new MySqlCommand("update user set password=@wd where iduser=2",cnn);
26             cmd.Parameters.AddWithValue("wd", "aaaa");
27             cmd.ExecuteNonQuery();
28         }
29         public static void Delete(MySqlConnection cnn)
30         {
31             MySqlCommand cmd = new MySqlCommand("delete from user where iduser=@id", cnn);
32             cmd.Parameters.AddWithValue("id", 5);
33             cmd.ExecuteNonQuery();
34         }
35         public static void  Insert(MySqlConnection cnn)
36         {
37             //string username = Console.ReadLine();
38             //string password = Console.ReadLine();
39             //MySqlCommand cmd = new MySqlCommand("Insert into user set userword=\'" + username + "\'" + ",password=\'" + password + "\'", cnn);
40             //Console.WriteLine("Insert int user set userword=\'" + username + "\'" + ",password=\'" + password + "\'");
41             string name = "zhag";
42             string paa = "zhagn\';delete from user;";
43             MySqlCommand cmd = new MySqlCommand("insert into user set userword=@id,password=@wd", cnn);
44             cmd.Parameters.AddWithValue("id", name);
45             cmd.Parameters.AddWithValue("wd", paa);
46             cmd.ExecuteNonQuery();
47         }
48         public static void Select(MySqlConnection cnn)
49         {
50 
51             //***********读取一行*******
52             //MySqlCommand cmd = new MySqlCommand("select * from user where iduser=1", msc);//使用msql查询ID 只查询一行
53             //MySqlDataReader reader = cmd.ExecuteReader();//执行命令
54             //if (reader.HasRows)//是否读取到行数
55             //{
56             //    reader.Read();//读取一行
57             //   string username= reader.GetString("userword");
58             //  string password=  reader.GetString("password");
59             //    Console.WriteLine( username+"-"+password);
60             //}
61             //***********读取多行行*******
62             MySqlCommand cmd = new MySqlCommand("select * from user", cnn);
63             MySqlDataReader reader = cmd.ExecuteReader();//执行命令
64             while (reader.Read())
65             {
66                 string username = reader.GetString("userword");
67                 string password = reader.GetString("password");
68                 Console.WriteLine(username + "  -  " + password);
69             }
70             reader.Close();
71 
72         }
73     }
74 }
自己写的代码

 

数据库学习网址:https://jingyan.baidu.com/article/76a7e409018a69fc3b6e1526.html?qq-pf-to=pcqq.group

一可视界面

查看数据库是否链接:

这个地方查看开关:

没有打开服务的时候:


1.创建一个新的:

 

2.

3.

 

 

PK是主键值:是唯一的,不能重复,不能为空
NN (not null):非空  string :null,int 0
UQ:唯一索引
B:二进制数值
UN:整数
ZF:填充  

int最大只能是4位数字:

AI:自增(ID是自增)

G: :生成列
Default:默认值

 

 

填写的样式:

 

 

 打开VS

找到这个:

然后添加这个:

2.引用命名空间:

3.引用这个类:

5.实列化出来:

链接的数据的名称:数据库,你创建的名字:数据的ip地址(本机 的ip地址):端口号:用户名:密码

 

其实没有区分大小写:
创建了

 

 打开链接:

 

读取某一张表格:

执行:

 


是否有一行,是个bool值:

当有值的时候 就读取出来:
把第一行读取出来,读取了username里面的数据,password里面的数值:

把值输出来:

 

使用完的时候,关闭数据库:
先关闭reader,再cnn

结果:

————————————————————以上是读取一行数据——

查询整个表

 

 

 

读取多行:

 

 结果:

 

 

 

**************************************************

 

 写成一个方法 查

 

 

---恢复内容结束---————————————————————


插入数据:

 自己输入账户和密码

 

存入数据:

 大部分时间都是用这个

 

 

结果:

 

 把密码注册成sql语句:

 

 就拼接成了全部删除 ,数据库的数据表就没有了
这种方式叫:数据注入  (把别人数据库东西删除了)

 改正方法:不用上边这种拼接的方式,用其他方式:
占位符的方式,然后把值添加进去

 

 

 

 

 ————————————————————————

 

 

 除了读以外,都是这个:

————————————————————————————


更新那个,什么数据,设置他的密码改谁的密码,
把18的密码改成一个新的密码;

 

 

 

后期会用到服务器与数据库的链接,会用到反射

 

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 using MySql.Data.MySqlClient;
 7 
 8 namespace Read
 9 {
10     class Program
11     {
12         static void Main(string[] args)
13         {
14             string connStr = "Database=test;Data Source=127.0.0.1;port=3306;User Id=root;Password=user";
15             MySqlConnection cnn = new MySqlConnection(connStr);//创建连接通道
16 
17             cnn.Open();//打开
18 
19             //Select(cnn);//20             //Insert(cnn);//21             //Delete(cnn);//
22             Update(cnn);//
23             Select(cnn);
24 
25             cnn.Close();
26 
27         }
28         static void Update(MySqlConnection cnn)
29         {
30             MySqlCommand cmd = new MySqlCommand("update user set passworld=@pwd where id=18",cnn);
31             cmd.Parameters.AddWithValue("pwd", "aaaaaa");
32             cmd.ExecuteNonQuery();
33         }
34         static void Delete(MySqlConnection cnn)
35         {
36             MySqlCommand cmd = new MySqlCommand("delete from user where id=@id",cnn);
37 
38             cmd.Parameters.AddWithValue("id", 17);
39 
40             cmd.ExecuteNonQuery();
41         }
42         static void Insert(MySqlConnection cnn)//插入
43         {
44             string username = "zhangsan";
45             string passworld = "zhangsan\';delete from user;";
46             //Console.WriteLine("insert into user set username= \'" + username + "\'" + ",passworld=\'" + passworld + "\'");
47             //MySqlCommand cmd = new MySqlCommand("insert into user set username= \'"+username+"\'"+",passworld=\'"+passworld+"\'",cnn);
48             MySqlCommand cmd = new MySqlCommand("insert into user set username=@id,passworld=@pwd", cnn);
49 
50             cmd.Parameters.AddWithValue("id", username);
51             cmd.Parameters.AddWithValue("pwd", passworld);
52 
53             cmd.ExecuteNonQuery();
54            
55         }
56         static void Select(MySqlConnection cnn)
57         {
58             MySqlCommand cmd = new MySqlCommand("select * from user ", cnn);//使用SQL命令查询ID
59 
60             MySqlDataReader reader = cmd.ExecuteReader();//执行命令
61             while (reader.Read())
62             {
63                 string username = reader.GetString("username");
64                 string passworld = reader.GetString("passworld");
65                 Console.WriteLine(username + "+" + passworld);
66             }
67             reader.Close();
68         }
69     }
70 }

 

以上是关于学习mysql的主要内容,如果未能解决你的问题,请参考以下文章

IOS开发-OC学习-常用功能代码片段整理

java SpringRetry学习的代码片段

python 机器学习有用的代码片段

从mysql的片段中加载ListView

学习笔记:python3,代码片段(2017)

连接MySQL出现错误:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)(代码片段