Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 12 odgovora
  • 4.715 pregleda

Najnovija ↓

nece da mi radi INSERT u c# 01.09.2007. u 18:48 · pre 233 meseca #1
Evo ovako napisao sam sledeci kod u c#:
Code:

string source = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\nekabaza.mdf;Integrated" +
            " Security=True;Connect Timeout=30;User Instance=True";
string sql_insert = "INSERT INTO polje1 (naziv) VALUES ('blablabla')";
SqlConnection conn = new SqlConnection(source);
conn.Open();
SqlCommand insertcmd = new SqlCommand(sql_insert, conn);
insertcmd.ExecuteNonQuery();
conn.Close();

I nece da radi.
insertcmd.ExecuteNonQuery(); mi vrati (int) 1, sto znaci da je jedan row dodat, ali nije. Nema ga u bazi.
Jel treba jos nesto da dodam ili ...?
Potpis
he he he
Re: nece da mi radi INSERT u c# 01.09.2007. u 22:06 · pre 233 meseca #2
Obriši ono "User Instance = True" i probaj da sve uglaviš u transakciju:
Code:

            SqlCommand insertcmd = new SqlCommand(sql_insert, conn);
            SqlTransaction transaction = null;
            try
            {
                transaction = conn.BeginTransaction();
                insertcmd.Transaction = transaction;
                insertcmd.ExecuteNonQuery();
                transaction.Commit();
            }
            catch(Exception ex)
            {
                transaction.Rollback();
            }

Breakpoint na rollback pa, ako ima greške, videće se
Potpis
Acta, non verba!
Re: nece da mi radi INSERT u c# 01.09.2007. u 22:58 · pre 233 meseca #3
imas gresku kod sql-a.

"Insert into tablica(Id,Ime,Prezime)" & "Values(1,Marko,Ta)"
Re: nece da mi radi INSERT u c# 02.09.2007. u 02:07 · pre 233 meseca #4
Pogledaj da li ti je ukljucena opcija da kopira bazu u bin pri kompajliranju :)
Mozda on ubaci dobro, ali ti kada pogledas bazu nema nista :)
A i kao sto rece MarkoBalkan, SQl ti ne valja ;)
Potpis
Shoot for the moon. Even if you miss, you'll land among the stars.
Les Brown
Re: nece da mi radi INSERT u c# 02.09.2007. u 09:49 · pre 233 meseca #5
Nisam siguran na kakvu gresku mislite?
Sta ovde "INSERT INTO tabla1 (naziv_polja) VALUES ('blablabla')" ne valja?
polje1 sam gore stavio za ime tabele, pa vas je mozda to zbunilo ili mislite na nesto drugo?
Potpis
he he he
Re: nece da mi radi INSERT u c# 02.09.2007. u 10:03 · pre 233 meseca #6
Citat:
ghost2k3: Nisam siguran na kakvu gresku mislite?
Sta ovde "INSERT INTO tabla1 (naziv_polja) VALUES ('blablabla')" ne valja?
polje1 sam gore stavio za ime tabele, pa vas je mozda to zbunilo ili mislite na nesto drugo?


napisao sam ti.
pogledaj dvostruke navodnike kod " & "Values
Re: nece da mi radi INSERT u c# 02.09.2007. u 10:03 · pre 233 meseca #7
Stavio sam ono sa transakcijom i isao korak po korak sve odradi, samo sto u bazi nema nista!?
Inace kada obrise User Instance=true, nece da radi.
Gde da vidim da li kopira bazu u bin prilikom kompajliranja?
Potpis
he he he
Re: nece da mi radi INSERT u c# 02.09.2007. u 10:11 · pre 233 meseca #8
INSERT INTO "table_name" ("column1", "column2", ...)
VALUES ("value1", "value2", ...)

ovo je sintaksa INSERT-a, a ovo je zvanican primer:

INSERT INTO Store_Information (store_name, Sales, Date)
VALUES ('Los Angeles', 900, 'Jan-10-1999')

Po cemu se sad moj INSERT razilkuje?

INSERT INTO table1(polje1) VALUES('blabla')
Potpis
he he he
Re: nece da mi radi INSERT u c# 02.09.2007. u 10:17 · pre 233 meseca #9
Da napomenem da sam to isto radio i sa Access-om i sve je sljakalo odlicno. Onda sam se prebacio na sql2005 sto sam dobio uz visual studio 2005 express i select radi odlicno, medjutim, insert ne radi.
Potpis
he he he
Re: nece da mi radi INSERT u c# 02.09.2007. u 12:06 · pre 233 meseca #10
Prebacio sam se ponovo na access i sve radi:
Code:

string source = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\cs\baza.mdb";
string sql_insert = "INSERT INTO table(naziv) VALUES('"+textBox1.Text+"');
OleDbConnection conn = new OleDbConnection(source);
conn.Open();
OleDbCommand insertcmd = new OleDbCommand(sql_insert, conn);
insertcmd.ExecuteNonQuery();
conn.Close();


Ne znam koji moj nece da radi sa sql serverom?!
Potpis
he he he
Re: nece da mi radi INSERT u c# 02.09.2007. u 16:54 · pre 233 meseca #11
Probaj sledece, da odmah nakon inserta ispises sadrzaj baze pomocu Select-a.
Jer posto ti ExecuteNonQuery vraca 1 znaci da je jedan red unet :) Samo pitanje je u koju bazu :)
U bin folderu pogledaj da li ti je prilikom kompajliranja kopirao bazu, i pogledaj da li je u njoj izvrsena promena (najverovatnije da jeste) :)
Pogledaj propertise baze, koja se nalazi u Data Folderu, i postavi oprciju Copy to Output Directory postavi na "Copy if Newer"
Potpis
Shoot for the moon. Even if you miss, you'll land among the stars.
Les Brown
Re: nece da mi radi INSERT u c# 02.09.2007. u 18:46 · pre 233 meseca #12
U medjuvremenu sam podesio da ne kopira bazu, odnosno "Copy If Newer".
Ne moze probao sam to sa SELECT. U stvari ja ubacujem neke stvari u bazu koje su odmah potom vidljive u combo boxu, tako sam inace i video da se nista ne ubacuje, jer se nije pojavljivalo posle unosa u comboboxu.
Ni jednoj bazi ne mogu da nadjem to sto sam ubacio.
Da ExecuteNonQuery mi vraca 1, ali gde on upise i da li zaista upise, nemam pojma.
Otvorio sam sve moguce baze koje postoje, odnosno jednu te istu na raznim mestima, ali nigde nema dodatog dela.
Inace imam jos jedno pitanje.
Pokrenuo sam SQL Server Management Studio Express, inace i da bi napravio bazu, a i da bi proverio ima li sta u bazi.
Medjutim posle toga, cak ni kada sam ga ugasio, nisam mogao da pristupim bazi iz C#?!
Tek kada sam restartovao racunar sam mogao. Nemogu nikako uporedo da koristim da dva programa, iskreno receno ni ne treba mi da ih koristim uporedo, ali me nerviralo sto sam par puta restartovao racunar bez potrebe.
Mislim da cu da zamenim par redova i to sve odradim u access bazi.
Potpis
he he he
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme