C# - Problemi i rješenja izdvojena tema

poruka: 2.151
|
čitano: 705.723
|
moderatori: Lazarus Long, XXX-Man, vincimus
+/- sve poruke
ravni prikaz
starije poruke gore
17 godina
odjavljen
offline
Re: C# - Problemi i rješenja
athlon64 kaže...

Pa da, ja samo zelim insertat stare podatke u malo osvjezenu bazu. Hoce li radit ako iz koda maknem sve osim insertova?

 

Da, ali moraš ostaviti identity insert on pa onda off poslije inserta.

Freak Show Inc.
15 godina
offline
Re: C# - Problemi i rješenja
Friday kaže...
athlon64 kaže...

 

EDIT: zašto nebi bio tekst? To mi samo kaze da li je komponenta cpu/gpu/ram itd...

 

Pa zašto u tablici Benchscoreovi imaš BenchmarkProgramId kad možeš napisati 3DMark?

To su 2 entity-a povezana. Ugl ne trebas se petljat u bazu, ja znam kakav ce bit algoritam i tome je baza prilagođena

Nikad te necemo zaboraviti. RIP EnlightenedPhoenix 24.6.2011.
13 godina
neaktivan
offline
Re: C# - Problemi i rješenja
Friday kaže...
athlon64 kaže...

Pa da, ja samo zelim insertat stare podatke u malo osvjezenu bazu. Hoce li radit ako iz koda maknem sve osim insertova?

 

Da, ali moraš ostaviti identity insert on pa onda off poslije inserta.

Ja sam kriv, na FB-u sam mu poslao skriptu sa INSERT-ima bez identity on - off. :D

17 godina
odjavljen
offline
Re: C# - Problemi i rješenja
athlon64 kaže...

 Ugl ne trebas se petljat u bazu

 

Freak Show Inc.
13 godina
neaktivan
offline
Re: C# - Problemi i rješenja
athlon64 kaže...

To su 2 entity-a povezana. Ugl ne trebas se petljat u bazu, ja znam kakav ce bit algoritam i tome je baza prilagođena

U redu to, ali on ti samo kaže da ne moraš imati id od zapisa pa kasnije petljati po toj tabeli i tražiti neki property tog referentnog zapisa, ako imaš samo ime i ID, no dobro, valjda ti znaš kako si radio bazu, ovo je samo radi normalizacije baze.

Poruka je uređivana zadnji put pon 19.11.2012 11:40 (royalhero).
17 godina
odjavljen
offline
Re: C# - Problemi i rješenja
royalhero kaže...
athlon64 kaže...

To su 2 entity-a povezana. Ugl ne trebas se petljat u bazu, ja znam kakav ce bit algoritam i tome je baza prilagođena

U redu to, ali on ti samo kaže da ne moraš imati id od zapisa pa kasnije petljati po toj tabeli i tražiti neki property tog referentnog zapisa, ako imaš samo ime i ID, no dobro, valjda ti znaš kako si radio bazu, ovo je samo radi normalizacije baze.

 

Ne petljaj se, vidiš da sam ja dobio po ušima zbog toga {#}

Freak Show Inc.
15 godina
offline
Re: C# - Problemi i rješenja
Friday kaže...
athlon64 kaže...

 Ugl ne trebas se petljat u bazu

 

Ma zezam se :) , nisam nista lose mislio samo ja sam tjednima korigirao model baze da bude tocno onako kako treba i to mi je prijatelj koji mi je i mentor za projekt ujedno kontrolira. Tako da baza je idealna ne brini za to :D

 

Ugl uspia sam ubacit sve, malo sam se igra s INSERT-ovima tablicu po tablicu i sve je tu...

 

Hvala {#}

 

EDIT: al ajde reci, zasto mislis da je problem ako je "tip" komponente string?

Nikad te necemo zaboraviti. RIP EnlightenedPhoenix 24.6.2011.
Poruka je uređivana zadnji put pon 19.11.2012 11:44 (athlon64).
13 godina
neaktivan
offline
Re: C# - Problemi i rješenja

U redu, glavno da je sredio problem. ;-)

17 godina
odjavljen
offline
Re: C# - Problemi i rješenja
athlon64 kaže...

 samo ja sam tjednima korigirao model baze ---

 

{#}

 

Freak Show Inc.
15 godina
offline
Re: C# - Problemi i rješenja
Friday kaže...
athlon64 kaže...

 samo ja sam tjednima korigirao model baze ---

 

{#}

 

Ne doslovno xd. Jedno tjedan dana sam izdvojio za ga korektno napravit. Tj dok sam bia na nastavi bi pisa query-e koji bi mi mogli tribat u programu i prema tome određiva veze :D , s obzirom da nisam ima prijasnjeg iskustva s bazama to je islo polako.

Nikad te necemo zaboraviti. RIP EnlightenedPhoenix 24.6.2011.
Poruka je uređivana zadnji put pon 19.11.2012 11:48 (athlon64).
17 godina
odjavljen
offline
Re: C# - Problemi i rješenja
athlon64 kaže...

Ne doslovno xd. Jedno tjedan dana sam izdvojio za ga korektno napravit. Tj dok sam bia na nastavi bi pisa query-e koji bi mi mogli tribat u programu i prema tome određiva veze :D , s obzirom da nisam ima prijasnjeg iskustva s bazama to je islo polako.

 

Baš zato poslušaj one sa malo više "utakmica u nogama".

Jednostavno je - samo broj kolona u tablicama:

 

Tvoja baza:

 

Jedna od mojih baza:

 

A pažnju na normalizaciju sam ti skrenuo baš zato jer se to smatra nečim uobičajenim i svatko tko se i malo kuži u baze će ti to uzeti za zlo a ideš na natjecanje...

Freak Show Inc.
Poruka je uređivana zadnji put pon 19.11.2012 11:53 (Friday).
15 godina
offline
C# - Problemi i rješenja

Ne shvacam sta mislis pod normalizaciju? String mi savršeno odgovara za ono što mi tu treba. Samo tekstualni podatak koji mi govori tip komponente, sta bi trebao stavit?

Nikad te necemo zaboraviti. RIP EnlightenedPhoenix 24.6.2011.
Moj PC  
0 0 hvala 0
17 godina
odjavljen
offline
Re: C# - Problemi i rješenja
athlon64 kaže...

Ne shvacam sta mislis pod normalizaciju? String mi savršeno odgovara za ono što mi tu treba. Samo tekstualni podatak koji mi govori tip komponente, sta bi trebao stavit?

 

Vidi, tvoja baza je malecka i to nije stvarno toliki problem (barem u smislu storage-a) ali bez obzira - trebaš staviti TipKomponenteId. Napravi novu tablicu TipoviKomponenti (Id, Tip). Onda će ti se polje TipKomponenteId referencirati na tu drugu tablicu. Ovako će ti poneki korisnik (zbog slobodnog unosa teksta) za tip komponente staviti CPU, netko će staviti Procesor, netko će staviti proc, itd... I onda radiš nekakav izvještaj u kojem moraš grupirati komponente prema tipu i umjesto da imaš npr CPU: 25 komada ti ćeš imati

CPU: 7 komada

Procesor: 12 komada

proc: 6 komada

A radi se o istoj grupi artikala. Da nekome u korporativnom okruženju takav report doneseš na stol bacio bi ti ga u glavu - doslovce!

Freak Show Inc.
15 godina
offline
Re: C# - Problemi i rješenja
Friday kaže...
athlon64 kaže...

Ne shvacam sta mislis pod normalizaciju? String mi savršeno odgovara za ono što mi tu treba. Samo tekstualni podatak koji mi govori tip komponente, sta bi trebao stavit?

 

Vidi, tvoja baza je malecka i to nije stvarno toliki problem (barem u smislu storage-a) ali bez obzira - trebaš staviti TipKomponenteId. Napravi novu tablicu TipoviKomponenti (Id, Tip). Onda će ti se polje TipKomponenteId referencirati na tu drugu tablicu. Ovako će ti poneki korisnik (zbog slobodnog unosa teksta) za tip komponente staviti CPU, netko će staviti Procesor, netko će staviti proc, itd... I onda radiš nekakav izvještaj u kojem moraš grupirati komponente prema tipu i umjesto da imaš npr CPU: 25 komada ti ćeš imati

CPU: 7 komada

Procesor: 12 komada

proc: 6 komada

A radi se o istoj grupi artikala. Da nekome u korporativnom okruženju takav report doneseš na stol bacio bi ti ga u glavu - doslovce!

Da,potpuno mi je jasno o cemu govoriš međutim trenutno radimo na prvom krugu razvoja. Odnosno sad cemo sve imat na baznoj razini. 

Bazu podataka ne osvježava nitko osim mene. S obzirom da mislim da ce software bit iskoristiv kasnije morat cemo napravit preinake sta se toga tice i jos dosta stvari.

Ako budem imao ljude koji pune bazu to je vec druga prica.

Nikad te necemo zaboraviti. RIP EnlightenedPhoenix 24.6.2011.
17 godina
odjavljen
offline
Re: C# - Problemi i rješenja
athlon64 kaže...

Da,potpuno mi je jasno o cemu govoriš međutim trenutno radimo na prvom krugu razvoja. Odnosno sad cemo sve imat na baznoj razini. 

Bazu podataka ne osvježava nitko osim mene. S obzirom da mislim da ce software bit iskoristiv kasnije morat cemo napravit preinake sta se toga tice i jos dosta stvari.

Ako budem imao ljude koji pune bazu to je vec druga prica.

 

Ta izmjena ti je tako malecka i zahtjeva vremena malo više nego što ti je trebalo da napišeš post... Kako god, ako budeš trebao pomoć oko još nekih stvari samo daj!

Freak Show Inc.
16 godina
odjavljen
offline
Re: C# - Problemi i rješenja

Preinake i normalizacija se rade odmah.

 

Kasnije se ta "sitnica" zavuče toliko duboko u kod da je više ni dragi bog ne može izmijeniti. Popravljaj dok možeš i dok nema prevelikog utjecaja na ostatak aplikacije. Kasnije ćeš psovati sam sebe zašto to nisi odmah sredio kako treba...

http://nighthawk-software.blogspot.com/
15 godina
offline
Re: C# - Problemi i rješenja
Friday kaže...
athlon64 kaže...

Da,potpuno mi je jasno o cemu govoriš međutim trenutno radimo na prvom krugu razvoja. Odnosno sad cemo sve imat na baznoj razini. 

Bazu podataka ne osvježava nitko osim mene. S obzirom da mislim da ce software bit iskoristiv kasnije morat cemo napravit preinake sta se toga tice i jos dosta stvari.

Ako budem imao ljude koji pune bazu to je vec druga prica.

 

Ta izmjena ti je tako malecka i zahtjeva vremena malo više nego što ti je trebalo da napišeš post... Kako god, ako budeš trebao pomoć oko još nekih stvari samo daj!

 

Sum_of_all_fears kaže...

Preinake i normalizacija se rade odmah.

 

Kasnije se ta "sitnica" zavuče toliko duboko u kod da je više ni dragi bog ne može izmijeniti. Popravljaj dok možeš i dok nema prevelikog utjecaja na ostatak aplikacije. Kasnije ćeš psovati sam sebe zašto to nisi odmah sredio kako treba...

U stvari ste u pravu, to cu morat napravit kad tad a onda ce bit plakanja šta se nisam prije sitia. Veceras cu se poigrat...

 

EDIT: inace kad uređujem bazu, da li mogu u entity frameworku napravit preinake koje zelim, dobit SQL kod za taj cijeli model i onda iz njega izvuc samo ono sta mi treba, dakle samo kod za kreiranje te 2 tablice? Da ne moram svaki put prebriisat bazu i onda skriptom vracat podatke u nju...

Nikad te necemo zaboraviti. RIP EnlightenedPhoenix 24.6.2011.
Poruka je uređivana zadnji put pon 19.11.2012 13:57 (athlon64).
17 godina
odjavljen
offline
Re: C# - Problemi i rješenja
athlon64 kaže...

EDIT: inace kad uređujem bazu, da li mogu u entity frameworku napravit preinake koje zelim, dobit SQL kod za taj cijeli model i onda iz njega izvuc samo ono sta mi treba, dakle samo kod za kreiranje te 2 tablice? Da ne moram svaki put prebriisat bazu i onda skriptom vracat podatke u nju...

 

Koliko ja znam EF može sam osvježiti podatke u bazi i osvježiti "sam sebe" prema podacima (o strukturi) iz baze.

 

Inače, za ovo bi dobio bitchslap:

[cijena] [nvarchar](max) NOT NULL,

 

Kao prvo - svagdje koristiš nvarchar max makar polje realno imalo potrebe za 4-5 slova i to je užasno loša praksa (stavi 50 ili nešto drugo, potrebe za max SIGURNO nemaš). A kao drugo - nvarchar za cijenu??? {#}

Freak Show Inc.
Poruka je uređivana zadnji put pon 19.11.2012 14:01 (Friday).
15 godina
offline
Re: C# - Problemi i rješenja
Friday kaže...
athlon64 kaže...

EDIT: inace kad uređujem bazu, da li mogu u entity frameworku napravit preinake koje zelim, dobit SQL kod za taj cijeli model i onda iz njega izvuc samo ono sta mi treba, dakle samo kod za kreiranje te 2 tablice? Da ne moram svaki put prebriisat bazu i onda skriptom vracat podatke u nju...

 

Koliko ja znam EF može sam osvježiti podatke u bazi i osvježiti "sam sebe" prema podacima (o strukturi) iz baze.

 

Inače, za ovo bi dobio bitchslap:

[cijena] [nvarchar](max) NOT NULL,

 

Kao prvo - svagdje koristiš nvarchar max makar polje realno imalo potrebe za 4-5 slova i to je užasno loša praksa (stavi 50 ili nešto drugo, potrebe za max SIGURNO nemaš). A kao drugo - nvarchar za cijenu??? {#}

A to EF automatski rješava, ja sam samo napravio model u koji sam dodao potrebne enitity-e i property-e , onda automatski kreira SQL.

Nikad te necemo zaboraviti. RIP EnlightenedPhoenix 24.6.2011.
Poruka je uređivana zadnji put pon 19.11.2012 14:03 (athlon64).
17 godina
odjavljen
offline
Re: C# - Problemi i rješenja
athlon64 kaže...
Friday kaže...
athlon64 kaže...

EDIT: inace kad uređujem bazu, da li mogu u entity frameworku napravit preinake koje zelim, dobit SQL kod za taj cijeli model i onda iz njega izvuc samo ono sta mi treba, dakle samo kod za kreiranje te 2 tablice? Da ne moram svaki put prebriisat bazu i onda skriptom vracat podatke u nju...

 

Koliko ja znam EF može sam osvježiti podatke u bazi i osvježiti "sam sebe" prema podacima (o strukturi) iz baze.

 

Inače, za ovo bi dobio bitchslap:

[cijena] [nvarchar](max) NOT NULL,

 

Kao prvo - svagdje koristiš nvarchar max makar polje realno imalo potrebe za 4-5 slova i to je užasno loša praksa (stavi 50 ili nešto drugo, potrebe za max SIGURNO nemaš). A kao drugo - nvarchar za cijenu??? {#}

A to EF automatski rješava, ja sam samo napravio model u koji sam dodao potrebne enitity-e i property-e , onda automatski kreira SQL.

 

Čekaj, čekaj... Pa kako si ti definirao taj property (cijenu) ako ga je on u bazu preselio kao nvarchar(max)?

Freak Show Inc.
13 godina
neaktivan
offline
Re: C# - Problemi i rješenja

I EF Code First i Model first za string generišu nvarchar(MAX).

 

A vidim da si pitao za cijenu, vjerovatno ju je postavio kao string, lapsus.

Poruka je uređivana zadnji put pon 19.11.2012 14:11 (royalhero).
15 godina
offline
Re: C# - Problemi i rješenja
Friday kaže...

 

Inače, za ovo bi dobio bitchslap:

[cijena] [nvarchar](max) NOT NULL,

 

Kao prvo - svagdje koristiš nvarchar max makar polje realno imalo potrebe za 4-5 slova i to je užasno loša praksa (stavi 50 ili nešto drugo, potrebe za max SIGURNO nemaš). A kao drugo - nvarchar za cijenu??? {#}

A to EF automatski rješava, ja sam samo napravio model u koji sam dodao potrebne enitity-e i property-e , onda automatski kreira SQL.

 

Čekaj, čekaj... Pa kako si ti definirao taj property (cijenu) ako ga je on u bazu preselio kao nvarchar(max)?

Definirao sam ga kao "scalar property" Nemam ja kontrolu nad tipom koji on postavi.

Nikad te necemo zaboraviti. RIP EnlightenedPhoenix 24.6.2011.
16 godina
neaktivan
offline
Re: C# - Problemi i rješenja
athlon64 kaže...
Friday kaže...

 

Inače, za ovo bi dobio bitchslap:

[cijena] [nvarchar](max) NOT NULL,

 

Kao prvo - svagdje koristiš nvarchar max makar polje realno imalo potrebe za 4-5 slova i to je užasno loša praksa (stavi 50 ili nešto drugo, potrebe za max SIGURNO nemaš). A kao drugo - nvarchar za cijenu??? {#}

A to EF automatski rješava, ja sam samo napravio model u koji sam dodao potrebne enitity-e i property-e , onda automatski kreira SQL.

 

Čekaj, čekaj... Pa kako si ti definirao taj property (cijenu) ako ga je on u bazu preselio kao nvarchar(max)?

Definirao sam ga kao "scalar property" Nemam ja kontrolu nad tipom koji on postavi.

 

Naravno da imaš kontrolu {#}

http://msacademic.hr/ - Ne gubi vrijeme guglajući o prilikama koje učenicima i studentima nudi Microsoft, ovdje je sve što ti treba! Ako sad nemaš vremena, msacademic.hr je tu i sutra :)
15 godina
offline
Re: C# - Problemi i rješenja
Fearless kaže...

Definirao sam ga kao "scalar property" Nemam ja kontrolu nad tipom koji on postavi.

 

Naravno da imaš kontrolu {#}

Nisam SQL nikad ucia, necu manualno minjat sve tipove.

Nikad te necemo zaboraviti. RIP EnlightenedPhoenix 24.6.2011.
Poruka je uređivana zadnji put pon 19.11.2012 20:03 (athlon64).
17 godina
odjavljen
offline
Re: C# - Problemi i rješenja
athlon64 kaže...
Fearless kaže...

Definirao sam ga kao "scalar property" Nemam ja kontrolu nad tipom koji on postavi.

 

Naravno da imaš kontrolu {#}

Nisam SQL nikad ucia, necu manualno minjat sve tipove.

 

Imaš 19 kolona u cijeloj bazi pobogu! Ti ćeš se jako iznenaditi ako se planiraš time baviti...

Mala digresija u svezi sa ovime. Prije cca 2 tjedna sam u dijelu tablica koje koristimo za jednu aplikaciju morao izbaciti timestamp polje - izmjenu u kodu sam morao napraviti na nešto malo više od 1200 mjesta.

Freak Show Inc.
15 godina
offline
Re: C# - Problemi i rješenja
Friday kaže...
athlon64 kaže...
Fearless kaže...

Definirao sam ga kao "scalar property" Nemam ja kontrolu nad tipom koji on postavi.

 

Naravno da imaš kontrolu {#}

Nisam SQL nikad ucia, necu manualno minjat sve tipove.

 

Imaš 19 kolona u cijeloj bazi pobogu! Ti ćeš se jako iznenaditi ako se planiraš time baviti...

Mala digresija u svezi sa ovime. Prije cca 2 tjedna sam u dijelu tablica koje koristimo za jednu aplikaciju morao izbaciti timestamp polje - izmjenu u kodu sam morao napraviti na nešto malo više od 1200 mjesta.

A u pravu si tu xd, a koje su mane ako ostavim nvchar tip? Zasad mi se nisu pojavili problemi pa...

Nikad te necemo zaboraviti. RIP EnlightenedPhoenix 24.6.2011.
17 godina
odjavljen
offline
Re: C# - Problemi i rješenja
athlon64 kaže...

A u pravu si tu xd, a koje su mane ako ostavim nvchar tip? Zasad mi se nisu pojavili problemi pa...

 

Moraš castati sve numeričke podatke u adekvatne tipove (jer ih iz baz dobiješ kao stringove). Više mjesta ti zauzimaju podaci u bazi, fragmentacija sql page-ova. I na kraju krajeva - to se tako ne radi. Napravi kako spada. Pogotovo ako to radiš za nekakvo natjecanje. Meni da donesu takvu bazu na ocjenjivanje... {#}

Freak Show Inc.
Poruka je uređivana zadnji put pon 19.11.2012 20:16 (Friday).
15 godina
offline
Re: C# - Problemi i rješenja
Friday kaže...
athlon64 kaže...

A u pravu si tu xd, a koje su mane ako ostavim nvchar tip? Zasad mi se nisu pojavili problemi pa...

 

Moraš castati sve numeričke podatke u adekvatne tipove (jer ih iz baz dobiješ kao stringove). Više mjesta ti zauzimaju podaci u bazi, fragmentacija sql page-ova. I na kraju krajeva - to se tako ne radi. Napravi kako spada. Pogotovo ako to radiš za nekakvo natjecanje. Meni da donesu takvu bazu na ocjenjivanje... {#}

Ok, znaci cijene u intove...

Nikad te necemo zaboraviti. RIP EnlightenedPhoenix 24.6.2011.
13 godina
neaktivan
offline
Re: C# - Problemi i rješenja

U tabeli cijene, polje cijena postavi na float, ne na int, nije cijena, nužno, cjelobrojan podatak.

15 godina
offline
C# - Problemi i rješenja

Je friday u pravu si, mogu ja odabrat koji je tip varijabble kad definiran scalar property. Neznam kako mi je promaklo ali sredit cu to obvezno. Cijene ce bit double-ovi

Nikad te necemo zaboraviti. RIP EnlightenedPhoenix 24.6.2011.
Moj PC  
0 0 hvala 0
Nova poruka
E-mail:
Lozinka:
 
vrh stranice