[ k4rl0 @ 01.06.2008. 15:43 ] @
Programiram vec neko vrijeme jedan projekt koji upisuje u bazu podatke i sve super radi sa normalnim tipovima podataka(text,integer,etc.).
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();
        }
    }
}


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 !
[ deerbeer @ 01.06.2008. 17:56 ] @
Code:

cmd.CommandText = "INSERT INTO tablica (id,ucenik,slika,default) VALUES ('',1,?slika,2)"; 

Tebi je ovde id u tablici primarni kljuc kao varchar polje ?
[ k4rl0 @ 01.06.2008. 18:45 ] @
Ne, integer koji se auto incrementira:
http://img403.imageshack.us/img403/5443/bazagl5.jpg
[ deerbeer @ 02.06.2008. 08:49 ] @
Citat:
k4rl0: Ne, integer koji se auto incrementira:
http://img403.imageshack.us/img403/5443/bazagl5.jpg


Code:

cmd.CommandText = "INSERT INTO tablica (ucenik,slika,default) VALUES ('Mika',?slika,2)";