Avatar billede armit Nybegynder
24. august 2006 - 10:18 Der er 1 kommentar og
1 løsning

Hente oplysninger fra den indsatte post.

Konvertering til MS SQL fra Access

Jeg har følgende stump kode der fungerede fint under Access, men jeg kan ikke få den til at returnere Id under MS Sql.

Nogle der har et forslag til ændring, vil helst bibeholde samme grad af kompleksitet selv. gerne mindre.

Det dur ikke med efterfølgende fremfinding af posten med SELECT, da der er mange brugere på systemet, og nogle af dem bruger samme login.

Kan det ikke lade sig gøre med MS Sql at indsætte en post og herefter at hente oplysninger fra denne, i dette tilfælde Id hvilket er et auto nummer.

(Fungerende kode på Access)
Set cn2 = Server.CreateObject("ADODB.Connection")
Set rs2 = Server.CreateObject("ADODB.Recordset")
cn2.open ""+Session("SiteOlef")+"","xxxxxxx","xxxxxxx"
rs2.activeconnection = cn2
rs2.cursortype = adopenforwardonly
sql2 = "SELECT * FROM [Catalog]"
rs2.Open sql2,cn2,1,3
rs2.AddNew
rs2("Supplier") = ""+Session("SupplierNo")+""
rs2("AgreementNo") = ""+Session("AgreementNo")+""
rs2("ItemGroupNo") = "0"
rs2("PriceAmount") = "0"
rs2("ItemsOnStock") = "0"
rs2("StockUnit") = "0"
rs2("BrutWeight") = "0"
rs2("NetWeight") = "0"
rs2("CostPrice") = "0"
rs2.Update
nytID = rs2("Id")
rs2.close
Set rs2 = nothing
cn2.close
Set cn2 = nothing
Response.Redirect("4706688.asp?Id="+CStr(nytID)+"&ReturnField=Id&href="+Request("href"))


På forhånd tak.
Avatar billede fennec Nybegynder
24. august 2006 - 11:00 #1
Mener da ellers din metode burde virke med Ms-SQL, men nu har jeg altid brugt insert metoden i stedet, og der kan du hive ID'et ud med @@identity:

cn2.execute("insert into Catalog(...) values(...)")
set rs2 = cn2.execute("select @@identity as nytID")
nytID = rs2("nytID")

Det er det rigtige ID du får, da den via connectionen kender brugeren og henter dennes ID, selv om der er andre der i mellemtiden har indsat rækker.
Avatar billede armit Nybegynder
06. september 2006 - 15:32 #2
Tak for kommentaren fennec, det var den automatiske konvertering af felter der havde unladt noget vigtig, da jeg gennemgik opsætningen af SQL databasen og rettede dette virkede min kode.
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
Kurser inden for grundlæggende programmering

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