Problem je pri upisu fajla u bazu koji je kod mene slika (jpeg).
Za rad sa bazom koristim klase koje sam nasao na MySQL stranici http://dev.mysql.com/doc/refman/5.0/en/connector-net.html
Ovako izgleda tablica unutar baze koja se zove 'baza' : http://img403.imageshack.us/img403/5443/bazagl5.jpg
A ovo je kod za upis slike "C:\resize.jpg".
Code:
using System;
using System.Data;
using MySql.Data.MySqlClient;
using System.Threading;
using System.IO;
namespace MySQL
{
class Program
{
static UInt32 FileSize;
static byte[] rawData;
static FileStream fs;
static void Main(string[] args)
{
MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand();
MySql.Data.MySqlClient.MySqlConnection connect = new MySql.Data.MySqlClient.MySqlConnection("spajanje na bazu - protiće vrlo dobro");
fs = new FileStream("C:\\resize.jpg", FileMode.Open, FileAccess.Read);
FileSize = Convert.ToUInt32(fs.Length);
rawData = new byte[FileSize];
fs.Read(rawData, 0, (int)FileSize);
fs.Close();
cmd.CommandText = "INSERT INTO tablica (id,ucenik,slika,default) VALUES ('',1,?slika,2)";
cmd.Parameters.Add("?slika", MySqlDbType.MediumBlob).Value = rawData;
connect.Open();
cmd.Connection = connect;
cmd.ExecuteNonQuery();
connect.Close();
}
}
}
using System;
using System.Data;
using MySql.Data.MySqlClient;
using System.Threading;
using System.IO;
namespace MySQL
{
class Program
{
static UInt32 FileSize;
static byte[] rawData;
static FileStream fs;
static void Main(string[] args)
{
MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand();
MySql.Data.MySqlClient.MySqlConnection connect = new MySql.Data.MySqlClient.MySqlConnection("spajanje na bazu - protiće vrlo dobro");
fs = new FileStream("C:\\resize.jpg", FileMode.Open, FileAccess.Read);
FileSize = Convert.ToUInt32(fs.Length);
rawData = new byte[FileSize];
fs.Read(rawData, 0, (int)FileSize);
fs.Close();
cmd.CommandText = "INSERT INTO tablica (id,ucenik,slika,default) VALUES ('',1,?slika,2)";
cmd.Parameters.Add("?slika", MySqlDbType.MediumBlob).Value = rawData;
connect.Open();
cmd.Connection = connect;
cmd.ExecuteNonQuery();
connect.Close();
}
}
}
Ovo naime ne radi a ja vec 2 dana ne mogu dokuciti zbog cega pa bih iznimno zahvalan bio
ako bi mi netko rekao gdje grjesim ?
PS: Javlja da imam gresku u SQL sintaksi(Linja cmd.ExecuteNonQuery) ? Gdje ?!
Puno hvala !