Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

VBNET i uskladistene procedure

[es] :: .NET :: .NET Desktop razvoj :: VBNET i uskladistene procedure

[ Pregleda: 2541 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

cesare
Misko Petrovic

Član broj: 55805
Poruke: 201
*.dynamic.sbb.rs.



+1 Profil

icon VBNET i uskladistene procedure27.12.2009. u 20:28 - pre 174 meseci
Pozdrav svima !!!!

Postoji li mogucnost pisanja koda uskladistene procedure za MySQL bazu u kodu VBNET aplikacije, i da se ta uskladistena procedura pozove i izvrsi po potrebi. Ako je moguce molio bih za primer koda.

Unapred hvala....
 
Odgovor na temu

malo_nj
novi sad

Član broj: 140825
Poruke: 104
*.dynamic.sbb.rs.

Sajt: www.2advanced.com


Profil

icon Re: VBNET i uskladistene procedure27.12.2009. u 22:33 - pre 174 meseci
e paz od VB bjezim ko djavo a ni MySQL nisam bas koristio al ev C# i SQL server pa mozda pomogne

Code:
 
                String cmdStr = "CREATE PROCEDURE getPage"
                    + "(@startrow int,@endrow int ) AS"
                    + " BEGIN"
                    + " SET NOCOUNT ON;"
                    + " select TempLogs.*"
                    + " from"
                    + " (select *, ROW_NUMBER() over (order by transactionNo) as RowNum"
                    + " from TRANSACTION_LOGS_ORDERS"
                    + " )"
                    + "TempLogs "
                    + " where RowNum between @startrow and @endrow"
                    + " order by transactionNo"
                    + " END";

                command = myAccessConn.CreateCommand();
                command.CommandText = cmdStr;
                try
                {
                    command.ExecuteNonQuery();
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.StackTrace);
                }

 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12848



+4784 Profil

icon Re: VBNET i uskladistene procedure28.12.2009. u 14:52 - pre 174 meseci
U vb.net-u ti je identicno ovo, samo je malo razlika u sintaksi.
Takodje, samo promeni tekst u stringovima da odgovara komandi kakva je u MySQL-u.

malo_nj, cemu bezanje? U vb.net-u bi koristio apsolutno iste objekte, cak bi kompajlirani .exe verovatno bio identican (bar izvrsni deo).
 
Odgovor na temu

malo_nj
novi sad

Član broj: 140825
Poruke: 104
*.dynamic.sbb.rs.

Sajt: www.2advanced.com


Profil

icon Re: VBNET i uskladistene procedure28.12.2009. u 16:16 - pre 174 meseci
Ne znam jednostavno ne mogu da ga svarim sve ostalo ide al VB nikako
 
Odgovor na temu

cesare
Misko Petrovic

Član broj: 55805
Poruke: 201
*.dynamic.sbb.rs.



+1 Profil

icon Re: VBNET i uskladistene procedure28.12.2009. u 23:16 - pre 174 meseci
malo_nj - Prepisao sam kod iz tvog primera u VB i probao. Razlika izmedju tvog i mog koda je u tome sto uskladistena procedura koja meni treba ima jedan ulazni i jedan izlazni argument, i sto se tekst procedure nalazi u eksternom fajlu. Kod uskladistene procedurese lepo ucita u promenljivu tipa STRING i prosledi komandi (command) i p[arametri se uspesno dodaju komadi. problem nastaje kod Komanda.ExecuteNonQuery() - poruka o gresci glasi: Index and length must refer to a location within the string. Parameter name: length. Sta nije lepo prosledjeno ?
 
Odgovor na temu

malo_nj
novi sad

Član broj: 140825
Poruke: 104
*.dynamic.sbb.rs.

Sajt: www.2advanced.com


Profil

icon Re: VBNET i uskladistene procedure29.12.2009. u 00:10 - pre 174 meseci
okaci taj dio koda i taj popunjeni string za proceduru
 
Odgovor na temu

cesare
Misko Petrovic

Član broj: 55805
Poruke: 201
*.dynamic.sbb.rs.



+1 Profil

icon Re: VBNET i uskladistene procedure29.12.2009. u 00:19 - pre 174 meseci
Kod u VB NET:

Code:

Dim PrviParametar As New MySqlParameter("@IDBrojModela", "MODE2009-000000000000000005")
        PrviParametar.Direction = ParameterDirection.Input
        PrviParametar.DbType = MySqlDbType.VarChar
        Dim DrugiParametar As New MySqlParameter("@Rezultat", "2")
        DrugiParametar.Direction = ParameterDirection.Output
        DrugiParametar.DbType = MySqlDbType.VarChar
        Dim oRead As New StreamReader("C:\Documents and Settings\CesareKS\Desktop\ProbniSkript.sql")
        Dim Komanda As New MySqlCommand
        Komanda = Conn.CreateCommand
        Komanda.CommandText = oRead.ReadToEnd
        Komanda.Parameters.Add(PrviParametar)
        Komanda.Parameters.Add(DrugiParametar)
        Komanda.ExecuteNonQuery()
        MsgBox(Komanda.Parameters("@Rezultat").Value.ToString)


Uskladistena procedura:

Code:

DROP PROCEDURE IF EXISTS `ProveraModela`; 
CREATE PROCEDURE `ProveraModela` (IN IDBrojModela VARCHAR(50),OUT Rezultat VARCHAR(50)); 
BEGIN 
    SELECT Naziv INTO Rezultat WHERE IdBroj=IDBrojModela;
END;


[Ovu poruku je menjao Shadowed dana 29.12.2009. u 02:36 GMT+1]
 
Odgovor na temu

malo_nj
novi sad

Član broj: 140825
Poruke: 104
*.dynamic.sbb.rs.

Sajt: www.2advanced.com


Profil

icon Re: VBNET i uskladistene procedure29.12.2009. u 00:44 - pre 174 meseci
e iskreno neam pojma sta bi tacno moglo biti ali ta greska se zna javiti kad ti command string nije dobar. Pokusaj nesto prosto tipa
Code:

cmdStr="CREATE PROCEDURE ProveraModela(IN IDBrojModela VARCHAR(50),OUT Rezultat VARCHAR(50)) BEGIN SELECT * FROM Tabela END;" 

gdje ces umjesto Tabela navesti neku dabelu koju imas. Znaci nemoj citati iz fajla nemoj stavljati parametre nego samo pokusaj izvrsiti neki jednostavan string za pravljenje procedure.
I primjetio sam da si ti stavio ime procedure pod apostrofe mozda jeste takva sintaksa al sad gledam na nekom sajtu i nema ih.
 
Odgovor na temu

[es] :: .NET :: .NET Desktop razvoj :: VBNET i uskladistene procedure

[ Pregleda: 2541 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.