Avatar billede brian-johansen Nybegynder
03. januar 2006 - 16:01 Der er 27 kommentarer og
1 løsning

update problem c# og acces

Hej.

Jeg har ramt et lidt underligt problem. Jeg har brugt denne her sætning masser af gange før, men den vil bare ikke virke.

Når jeg opdatere for jeg en fejl i min update syntax

Jeg har skrevet følgende kode:

public void opdaterepassword()
    {

myCmd.CommandText = "UPDATE bruger SET password=@pass,ny=@status where brugerid=@bruger";
OleDbParameter param = new OleDbParameter();
param.ParameterName="@bruger";
param.Value= bruger.Text;
////
OleDbParameter param1 = new OleDbParameter();
param1.ParameterName="@status";
param1.Value= 2;
////

OleDbParameter param2 = new OleDbParameter();
param2.ParameterName="@pass";
param2.Value= pass.Text;
///
myCmd.Parameters.Add(param);
myCmd.Parameters.Add(param1);
myCmd.Parameters.Add(param2);
myConn.Open();
myCmd.ExecuteNonQuery();
myConn.Close();
}

Af tabel felter har jeg flg.

brugerid = Tekst
password = Tekst
ny = tal

Jeg tror jeg har stiret mig blind på problemet er der nogen der kan se hvad der er galt ?.

mvh Brian
Avatar billede snepnet Nybegynder
03. januar 2006 - 16:30 #1
hej brian :o)

where brugerid=@bruger ... det lyder som om brugerid er et tal og ikke en tekst - det er ikke der der er noget ballade vel?

men ellers..... kan du ikke lægge fejlmeddelelsen herud?

mvh
Avatar billede brian-johansen Nybegynder
03. januar 2006 - 16:40 #2
Hej snepnet :)

Grunden til at der står brugerid er bare fordi jeg har brugt noget gamle kode, jeg ved ikke helt hvilke slags brugernavne de vil bruge men jeg tror det er en blanding af tal og bogstaver.

Jeg ligger lige fejlmeddelsen her:

Der er en syntaksfejl i UPDATE-sætningen.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Data.OleDb.OleDbException: Der er en syntaksfejl i UPDATE-sætningen.

Source Error:


Line 88:             myCmd.Parameters.Add(param2);
Line 89:             myConn.Open();
Line 90:             myCmd.ExecuteNonQuery(); <- Den der
Line 91:             myConn.Close();
Line 92:


Source File: c:\inetpub\wwwroot\afstemning\firstlogin.aspx.cs    Line: 90

Stack Trace:


[OleDbException (0x80040e14): Der er en syntaksfejl i UPDATE-sætningen.]
  System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(Int32 hr) +41
  System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult) +174
  System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult) +92
  System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult) +65
  System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method) +112
  System.Data.OleDb.OleDbCommand.ExecuteNonQuery() +66
  afstemning.firstlogin.opdaterepassword() in c:\inetpub\wwwroot\afstemning\firstlogin.aspx.cs:90
  afstemning.firstlogin.Button1_Click(Object sender, EventArgs e) in c:\inetpub\wwwroot\afstemning\firstlogin.aspx.cs:64
  System.Web.UI.WebControls.Button.OnClick(EventArgs e) +108
  System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +57
  System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +18
  System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
  System.Web.UI.Page.ProcessRequestMain() +1277


mvh Brian
Avatar billede snepnet Nybegynder
03. januar 2006 - 17:11 #3
jeg tror bare det er et spørgsmål om beskyttede navne... prøv sådan her:

myCmd.CommandText = "UPDATE bruger SET [password]=@pass, [ny]=@status where [brugerid]=@bruger";

mvh
Avatar billede brian-johansen Nybegynder
03. januar 2006 - 17:19 #4
Hej,
Nu får jeg en anden fejl der hedder:
Handlingen skal bruge en opdaterbar forespørgsel.

Ved du hvad jeg kan gøre ved den... den kommer samme sted ?

mvh Brian
Avatar billede snepnet Nybegynder
03. januar 2006 - 17:23 #5
det kan tænkes at din database er skrivebeskyttet.... har du checket i filsystemet at du kan skrive til den?
mvh
Avatar billede brian-johansen Nybegynder
03. januar 2006 - 17:30 #6
Ja jeg har tjekket den, og den ser ikke ud til at være skrivebeskyttet, jeg har tjekket inde i IIS manger og på selve mappen ?

Er der andre steder jeg skal kigge ?

mvh Brian
Avatar billede snepnet Nybegynder
03. januar 2006 - 17:37 #7
har du checket på selve filen?
mvh
Avatar billede brian-johansen Nybegynder
03. januar 2006 - 17:40 #8
ja... skal jeg tjekke inde i iis manager ?
Avatar billede snepnet Nybegynder
03. januar 2006 - 17:41 #9
plejer bare at kigge i filsystemet selv ... altså bare højreklik på filen og så properties->security
mvh
Avatar billede brian-johansen Nybegynder
03. januar 2006 - 17:47 #10
jamen den er i orden så.
mvh Brian
Avatar billede michael_stim Ekspert
03. januar 2006 - 17:51 #11
Det lyder som om du skal give IUSR-computernavn rettigheder.
Avatar billede brian-johansen Nybegynder
03. januar 2006 - 17:55 #12
Jamen det har kontoen også, det er lidt underligt for jeg har overhovedet ikke problemer med min andre sider der ligger på computeren.

mvh Brian
Avatar billede snepnet Nybegynder
03. januar 2006 - 18:42 #13
jeg mindes ikke at have stødt på, at den fejl ikke skyldtes et rettighedsproblem, så jeg tror stadig at det er der du skal finde fejlen.
en eller anden forskel må der være på det site hvor du har fejlen - og de andre der virker.
mvh
Avatar billede brian-johansen Nybegynder
03. januar 2006 - 18:49 #14
ja altså forskellen er den måde jeg har sat parameterne op på, jeg havde skrevet de anderledes i starten med der fik jeg samme fejl også prøvede jeg at lave udfra noget jeg fandt på nettet.

Men jeg kan overhovede ikke se hvad der skulle være galt i sætningen

mvh Brian
Avatar billede brian-johansen Nybegynder
03. januar 2006 - 18:53 #15
Jeg bliver nød til at smutte nu her men jeg kommer tilbage senere i aften eller i morgen, hvis du finder en løsning :D

tak for hjælpen og tiden.

mvh Brian
Avatar billede snepnet Nybegynder
03. januar 2006 - 19:10 #16
der er ikke noget ballade med din sætning udover det du har fikset med [] omkring kolonnenavnene.
den nye fejl du fik har jeg som nævnt ikke set i andre forbindelser end at du ikke få lov at rette i basen, hvis den bruger der forsøger at udføre kommandoen ikke har det.
men måske eksekverer du under en anden bruger end du tror... har du givet asp.net brugeren adgang?
mvh
Avatar billede brian-johansen Nybegynder
03. januar 2006 - 22:02 #17
ja, det mener jeg helt bestemt, men jeg kan prøve at ligge kode op på en webserver, og se om det gør bedre

mvh
Avatar billede snepnet Nybegynder
03. januar 2006 - 22:13 #18
giv det en chance :o)
mvh
Avatar billede brian-johansen Nybegynder
03. januar 2006 - 22:19 #19
ok, nu har jeg lige lagt det op på nettet. Og først lagde jeg den ved needhost.dk, og virkede det heler ikke, men da jeg lage den op til onnet.no, så virkede det første gang.

Det må være et eller andet med min opsætning men jeg ved ikke helt hvordan jeg skal ændre det ?

Tak for hjælpen

mvh Brian
Avatar billede -psycho- Nybegynder
04. januar 2006 - 01:28 #20
Det er rettigheds problem.. Husk også at give aspnet brugeren rettigheder til at skrive/læse.

Hvis du kører 2003 server er det NETWORK SERVICE som skal have rettigheder til mappen/filen.
Avatar billede brian-johansen Nybegynder
04. januar 2006 - 08:49 #21
Jamen det er en IIS server der ligger på en XP Pro maskine. Og der har jeg været inde i Internet Information Services, og sat at man både kan skrive, læse og gennemse mappen.

Jeg forstår ikke helt hvor jeg ellers skal ændre det?

mvh Brian
Avatar billede michael_stim Ekspert
04. januar 2006 - 09:26 #22
For at løse problemet skal du højre klikke på den mappe hvor databasen er gemt. Klik på fanebladet Security, og tildel brugeren IUSER_xxxxx (xxxxx er serverens navn) "Write" rettigheder, du skal også sørge for database filen får "Write" rettigheder.

http://www.skybuilders.com/Documentation/InstallManual2000.html

Kik specielt der hvor de giver IUSR rettigheder.
Avatar billede brian-johansen Nybegynder
04. januar 2006 - 15:45 #23
Det virker heller ikke har prøvet ændre det men det vil bare ingenting

mvh Brian
Avatar billede brian-johansen Nybegynder
09. januar 2006 - 12:18 #24
Humm kan ikke få det til at virke, men snepnet, kan du ikke ligge et svar, jeg fik du jo til at virke på webserveren :D

mvh Brian
Avatar billede snepnet Nybegynder
09. januar 2006 - 20:31 #25
du får et svar her, men det er jo ikke så lækkert at du ikke kan få det til at virke lokalt ??!
mvh
Avatar billede brian-johansen Nybegynder
13. januar 2006 - 09:52 #26
Nej det er mega træls, men jeg må lige prøve at rode med det.

mvh Brian
Avatar billede snepnet Nybegynder
14. januar 2006 - 14:05 #27
hov - fik jo egentlig aldrig lagt et svar :o)
... hvordan går det med det?
mvh
Avatar billede brian-johansen Nybegynder
15. januar 2006 - 13:58 #28
Kan ikke umiddelbart se hvad der er galt må til at rode noget mere med det..


Tak for hjælpen i hvert fald...

mvh BRian
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester