my sql과 연동해서 이미지 파일을 넣으려는데 크기가 큰 파일을 넣으면 자꾸 MySql.Data.MySqlClient.MySqlException: 'Data too long for column 'image' at row 1'
이런식으로 오류가 떠 버리네요ㅠㅠㅠ 이미지 파일 크기를 줄여야하나요?? 비쥬얼이나 mysql을 거의 처음 써봐서 유튜브 보고 따라하는 것도 힘드네요 ... 도움 좀 주실수있으신가요?
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.MySqlClient;
using System.IO;
namespace image
{
public partial class Form1 : Form
{
MySqlConnection connection = new MySqlConnection("datasource=localhost;port=3306;username=root;password=dbtjr1");
MySqlCommand command;
public Form1()
{
InitializeComponent();
}
private void image_Click(object sender, EventArgs e)
{
OpenFileDialog opf = new OpenFileDialog();
opf.Filter = "Choose Image(*.jpg; *.png; *.gif)|*.jpg; *.png; *.gif";
if (opf.ShowDialog() == DialogResult.OK)
{
pictureBox1.Image = Image.FromFile(opf.FileName);
}
}
private void Go_Click(object sender, EventArgs e)
{
MemoryStream ms = new MemoryStream();
pictureBox1.Image.Save(ms, pictureBox1.Image.RawFormat);
byte[] img = ms.ToArray();
String insertQuery = "INSERT INTO login.login_tb(image) VALUES(@img)";
connection.Open();
command = new MySqlCommand(insertQuery, connection);
command.Parameters.Add("@img", MySqlDbType.LongBlob);
command.Parameters["@img"].Value = img;
if(command.ExecuteNonQuery() == 1)
{
MessageBox.Show("Data Inserted");
}
connection.Close();
}
}
}