INSERT문으로 넣기
문자열은 양옆에 '"++"' 이런식으로 넣어주어야한다.
그리고 아이피는 앞의 블로그글 MYSQL C#연동 1에서 구한 IP,Database를 넣어준다.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data;
using MySql.Data.MySqlClient;
namespace WindowsFormsApp5
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
MySqlConnection conn;
MySqlCommand cmd; //sql구문을 실행시켜주는 객체
private void button2_Click(object sender, EventArgs e) //연결버튼
{
//교량 구축하기 + 트럭준비
String connStr = "Server=192.168.100.56;Port=3306;Uid=testuser;Pwd=1234;Database=test01;CHARSET=UTF8";
conn = new MySqlConnection(connStr);
conn.Open();
cmd = new MySqlCommand("", conn);
MessageBox.Show("연결성공");
}
private void button3_Click(object sender, EventArgs e)
{
conn.Close();
MessageBox.Show("연결해제");
}
private void button1_Click(object sender, EventArgs e) //추가버튼
{
string name;
int age;
string addr;
name = tb_name.Text.ToString();
age = int.Parse(tb_age.Text.ToString());
addr = tb_addr.Text.ToString();
//쿼리문을 준비
String sql ="INSERT INTO userTbl(name,age,addr)VALUES('";sql += name + "'," + age + ",'" + addr + "');";
cmd.CommandText = sql;
cmd.ExecuteNonQuery(); //insert, update등 실행갯수 반환
MessageBox.Show("입력 성공~");
}
}
}
SqlCommend 클래스
sql을 실행하기 위해 사용되는 클래스
ExcutenonQuery 쿼리문을 실행만 하고 적용만 할 때, insert, update, delete 등의 DML 실행시 사용
cmd.CommandTeext = "INSERT Table1 VALUES(1,N"광화문')";
cmd.ExecuteNonQuery();
ExecuteScalar : 메서드는 리턴되는 데이터가 하나 single value 인 경우, (count,sum,avg,max,min집계함수)
cmd.CommandText = "SELECT COUNT(*) FROM Table1";
object scalarValue = cmd.ExecuteScalar(); //변수로 object로 받고
count = (int)scalarValue; // 자료형을 바꾸어서 사용
cmd.ExecuteReader() : 여러줄 가져올 떄, select에서 사용
string sql = "SELECT * FROM Finance";
SqlCommand cmd = new SqlCommand(sql,conn);
SqlDataReader rdr = cmd.ExecuteReader();
1) 예제에 cmd.ExecuteReader()를 사용해보기
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data;
using MySql.Data.MySqlClient;
namespace WindowsFormsApp5
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
MySqlConnection conn;
MySqlCommand cmd; //sql구문을 실행시켜주는 객체
private void button2_Click(object sender, EventArgs e) //연결버튼
{
//교량 구축하기 + 트럭준비
String connStr = "Server=192.168.100.56;Port=3306;Uid=testuser;Pwd=1234;Database=test01;CHARSET=UTF8";
conn = new MySqlConnection(connStr);
conn.Open();
cmd = new MySqlCommand("", conn);
MessageBox.Show("연결성공");
}
private void button3_Click(object sender, EventArgs e)
{
conn.Close();
MessageBox.Show("연결해제");
}
private void button1_Click(object sender, EventArgs e) //추가버튼
{
string name;
int age; //정수타입만 입력
string addr;
name = tb_name.Text.ToString(); //문자열로 바꿔 넣기
age = int.Parse(tb_age.Text.ToString()); //문자열타입을 정수형으로 형변환하여 넣기
addr = tb_addr.Text.ToString();
//쿼리문을 준비
//String sql ="INSERT INTO userTbl(name,age,addr)VALUES('";sql += name + "'," + age + ",'" + addr + "');";
String sql = "INSERT INTO userTbl(name,age,addr)VALUES('" + name + "'," + age + ",'" + addr + "');";
cmd.CommandText = sql;
cmd.ExecuteNonQuery(); //insert, update등 실행갯수 반환
MessageBox.Show("입력 성공~");
}
string str_name;
string str_age;
string str_addr;
ListViewItem lvi;
private void bt_select_Click(object sender, EventArgs e) //추출버튼
{
lv_show.Items.Clear(); //폼의 listview 초기화
//쿼리문 준비
String sql = "SELECT name,age,addr FROM userTbl";
cmd.CommandText = sql; //트럭에 짐 싣기
MySqlDataReader reader; //짐을 연결한 끈, 서버에서 데이터를 가져오도록 실행
reader = cmd.ExecuteReader();
//끈 당기기
while (reader.Read())
{
str_name = reader["name"].ToString();
str_age = reader["age"].ToString();
str_addr = reader["addr"].ToString();
lvi = new ListViewItem(new string[] { str_name, str_age, str_addr });
lv_show.Items.Add(lvi);
}
reader.Close();
}
}
}
'Programming > C#' 카테고리의 다른 글
C# 타이머와 콤보박스 (0) | 2021.05.31 |
---|---|
C# DB연동 ListView로 데이터 추출 예제 (0) | 2021.05.28 |
MYSQL C# 연동1 (0) | 2021.05.28 |
C# ListView를 다뤄보자! (0) | 2021.05.27 |
C# Window Form - 라벨, 버튼, 텍스트박스, 체크박스, 라디오박스 (0) | 2021.04.30 |
댓글