using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MySql.Data.MySqlClient;
namespace MySQL数据库操作
{
class Program
{
static void Main(string[] args)
{
string connStr = "Database=test007;Data Source=127.0.0.1;port=3306;User id=root;password=1234;";//指定数据库 所在的IP地址 端口号 用户id 密码 用户名 密码不分大小写 user id 和写成user都可以
MySqlConnection conn = new MySqlConnection(connStr);//连接数据库
conn.Open();//打开连接 这样程序就会和数据库建立连接通道 方便后面的增删改查操作
#region 查询
//MySqlCommand cmd = new MySqlCommand("select* from user", conn);//将sql语句传过去
//MySqlDataReader reader = cmd.ExecuteReader();//执行命令
//while (reader.Read())//判断是否有数据 有就读取
//{
// string username = reader.GetString("username");//reader.getstring 方法 参数直接填写列名即可获取数据
// string password = reader.GetString("password");
// Console.WriteLine(username + ":" + password);
//}
//reader.Close();//关闭读取流
#endregion
#region 数据库插入
string username = "LCH";string password = "123';delete from user;";
// MySqlCommand cmd = new MySqlCommand("insert into user set username ='"+username+"'"+",password='" + password+"'",conn);//通过字符串组拼的方式组成sql语句 这种方式就会存在sql注入的问题 比如 用户的密码如果是 123';delete from user; 那么就会被当成sql 语句写入 将会出现问题 解决方法入下
MySqlCommand cmd = new MySqlCommand("inser into user set username=@un,password = @pwd", conn);
cmd.Parameters.AddWithValue("un", username);
cmd.Parameters.AddWithValue("pwd", password);
cmd.ExecuteNonQuery();//执行插入 ,这个ExecuteNonQuery就是执行跟查询无关的操作
#endregion
conn.Close();//关闭连接
Console.ReadKey();
}
}
}
关键代码