Toon posts:

[asp] SQL Query updaten lukt niet

Pagina: 1
Acties:
  • 149 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Mijn code :

ASP:
1
2
3
4
5
6
7
8
9
dim ProductName
 ProductName= Request.Querystring("ProductName")

MM_updateStr = "UPDATE products SET productName= '"& ProductName &"' WHERE ProductId=" & ProductId

 Set MM_updateCmd = Server.CreateObject("ADODB.Command")
 MM_updateCmd.ActiveConnection = "dsn=dsnrktCommerce;"
 MM_updateCmd.CommandText = MM_updateStr
 MM_updateCmd.Execute 


Ik krijg geen error, het werkt alleen niet, ik heb al gezocht en andere codes geprobeerd maar het lukt niet. Iemand die me kan helpen/uitleggen?!

[ Voor 17% gewijzigd door Verwijderd op 19-11-2004 11:54 ]


  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 15:08

mulder

ik spuug op het trottoir

Heeft productid wel een waarde? Moet je de commandtype niet zetten?

oogjes open, snaveltjes dicht


Verwijderd

Topicstarter
ProductId wordt ook mee gegeven.

  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

Is ProductId een nummer of een tekstveld?

Verwijderd

Topicstarter
ProductID is een nummer
Bijvoorbeeld 001

  • whoami
  • Registratie: December 2000
  • Laatst online: 15:10
Als het een nummer is, moet je die quotes daarrond weghalen. Anders wordt het behandeld als een alfanummeriek veld; echter, als het echt als 001 in de DB staat, dan is het in de DB geen numeriek veld maar een alfanummeriek.
Bij een numeriek veld zou er nl. 1 staan, en niet 001.

[ Voor 42% gewijzigd door whoami op 19-11-2004 12:04 ]

https://fgheysels.github.io/


  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 15:08

mulder

ik spuug op het trottoir

Maar als het 001 is dan is het een dus juist een alfanumeriek veld? En moeten er juist quotes omheen (ProductId)

edit : zie whoami

[ Voor 9% gewijzigd door mulder op 19-11-2004 12:06 ]

oogjes open, snaveltjes dicht


Verwijderd

Topicstarter
Als ik deze query in phpmyadmin gooi :
UPDATE products SET ProductName = 'aangepast' WHERE ProductId = '5990'

Doet hij het perfect, echter niet in mijn code :

code:
1
2
3
4
5
6
 MM_updateStr = "UPDATE products SET ProductName ='aangepast' WHERE ProductId='5990'"

 Set MM_updateCmd = Server.CreateObject("ADODB.Command")
 MM_updateCmd.ActiveConnection = "dsn=dsnrktCommerce;"
 MM_updateCmd.CommandText = MM_updateStr
 MM_updateCmd.Execute

  • whoami
  • Registratie: December 2000
  • Laatst online: 15:10
Tja, dan zit er niks anders op dan je asp code eens te debuggen:
output je query naar het scherm voordat je hem uitvoert, zodat je ziet wat er werkelijk naar de DB gestuurd wordt.

https://fgheysels.github.io/


Verwijderd

Topicstarter
ASP:
1
2
3
4
5
6
7
8
9
 MM_updateStr = "UPDATE products SET ProductName ='aangepast' WHERE ProductId='5990'"

 Set MM_updateCmd = Server.CreateObject("ADODB.Command")
 MM_updateCmd.ActiveConnection = "dsn=dsnrktCommerce;"
 MM_updateCmd.CommandText = MM_updateStr
 MM_updateCmd.Execute 

 
 response.write ("De DB Query is :") & MM_updateStr


De DB Query is :UPDATE products SET ProductName ='aangepast' WHERE ProductId='5990'

Bovenstaand mijn output. Dit lijkt mij helemaal goed te zijn. Gooi ik hem in PhpMyAdmin doet ie het ook...dus wat kan er dan nog mis zijn?!

  • j_du_pee
  • Registratie: Maart 2000
  • Laatst online: 23-09-2024

j_du_pee

du pain, du vin, du pee

Heb je toevallig errormeldingen uit staan dmv "on error goto next" :?

kaart != map && bottel != fles
Wacht op antwoord


Verwijderd

Volgens mij moet je idd COMMANDTYPE meegeven. Want is de default niet stored procedure? En jij start geen SP maar stuurt een text door, dus moet het type op commandtext worden gezet.

Verwijderd

Topicstarter
Verwijderd schreef op vrijdag 19 november 2004 @ 12:54:
Volgens mij moet je idd COMMANDTYPE meegeven. Want is de default niet stored procedure? En jij start geen SP maar stuurt een text door, dus moet het type op commandtext worden gezet.
Hoe doe ik dat ?!

  • Lukse
  • Registratie: Januari 2004
  • Laatst online: 12-04-2023
Moet je niet eerst een connectie maken?
Je krijgt dan zoiets:
code:
1
2
3
4
5
6
7
8
9
10
11
12
Set conn = Server.CreateObject("ADODB.Connection")
conn.open "dsnrktCommerce"

dim ProductName
 ProductName= Request.Querystring("ProductName")

MM_updateStr = "UPDATE products SET productName= '"& ProductName &"' WHERE ProductId=" & ProductId

 Set MM_updateCmd = Server.CreateObject("ADODB.Command")
 MM_updateCmd.ActiveConnection = conn
 MM_updateCmd.CommandText = MM_updateStr
 MM_updateCmd.Execute

[ Voor 25% gewijzigd door Lukse op 19-11-2004 13:04 ]


Verwijderd

Topicstarter
Heren het zat in het feit dat ik een verkeerde dsn aanpakte !
Onwijs bedankt voor de hulp nu werkt het.

  • Lukse
  • Registratie: Januari 2004
  • Laatst online: 12-04-2023
|:(

Toch raar dat je geen error melding kreeg :?

Verwijderd

Topicstarter
Ja ik zag het pas toen ik username /password deed toen kreeg ik namelijk access dienied
Pagina: 1