Just nu i M3-nätverket
Jump to content

Olika tecken..


Miljarder

Recommended Posts

Hejsan,

 

Hmm, jag håller på och kör en update i en ACCESS-databas men det finns men massa "dumma" tecken såsom *,'+- osv.. och del blir ju såklart fel när jag kör det hela.. kan man göra nåt så den tar allt som finns i Col1 som en sträng?

 

UPDATE SET Col1=" & changer(RS("Col1")) & " WHERE ID=" & RS("ID")

 

Tack för hjälpen och ha det bra!

 

//Tomas

 

_________________________________________________

"Det är när det går långsamt som man förlorar sekunder!"

 

 

Link to comment
Share on other sites

Mr Andersson

Vilken datatyp har kolumnen? Är det text, så ska inte "dumma" tecken på verka något. Är det nummerfält så blir det med soppa av det....

 

Du kan börja med att sätta din sträng inom fnuttar, då antas det vara en sträng, men om kolumnen är av typen numerisk så blir det soppa ändå.

 

UPDATE SET Col1='" & changer(RS("Col1")) & "' WHERE ID=" & RS("ID")

 

(vad gör din funktion changer() ?)

 

 

 

Link to comment
Share on other sites

Tjena.. jo det var ' som ställde till det, löste det men nu är det bekymmer med..

 

texten = Replace(texten,"Ž","Ä")

texten = Replace(texten,"™","Ö")

texten = Replace(texten,"�","Å")

 

 

Detta funkar inte.. hur ska jag göra för att lösa detta?

 

Tack för hjälpen och ha det bra!

 

//Tomas

 

Link to comment
Share on other sites

Anjuna Moon
Detta funkar inte.. hur ska jag göra för att lösa detta?

Ta reda på vilka ASCII-koder tecknen har och använd sedan dess i replace-uttrycken

 

ex.

texten = [color="#0000ff"]Replace[/color](texten,[color="#0000ff"]Chr[/color](65),[GRÅ]"A"[/GRÅ])

 

Link to comment
Share on other sites

error '80020009'

change.asp, line 25

 

Detta felmeddelande får jag..

 

texten = Replace(texten,Chr(141),"Å")

 

Link to comment
Share on other sites

Anjuna Moon

Fungerar bra för mig. Det måste ha att göra med hur datan är representerad i db:n då. Vilken datatyp i Access?

 

Link to comment
Share on other sites

Hejsan igen,

 

Nu får jag felmeddelande på rad 7 som är "text = Replace(text,Chr(141),"Å")" och meddelandet är "Invalid use of Null: 'Replace'", nån som har nån idé? Tar jag bort Field12 så funkar det..

 

Eller jag vet ju vad som är fel.. men hur ska jag lösa det?

 

Ha det bra!

 

//Tomas

 

 

__KODEN___________________

 

 

Function changer(text)

 

text = Replace(text,Chr(141),"Å")

text = Replace(text,Chr(142),"Ä")

text = Replace(text,Chr(143),"Å")

text = Replace(text,Chr(144),"Å")

text = Replace(text, "'", "''")

changer = text

 

End Function

 

 

SQL2="SELECT ID, Field9, Field4, Field13, Field12 from TblCheck ORDER by ID"

Set RS2 = Conn.Execute(SQL2)

 

DO UNTIL RS2.EOF

Addera322 = "UPDATE TblCheck SET Field9='" & changer(RS2("Field9")) & "', Field4='" & changer(RS2("Field4")) & "', Field12='" & changer(RS2("Field12")) & "', Field13='" & changer(RS2("Field13")) & "' WHERE ID=" & RS2("ID")

conn.execute(Addera322)

RS2.MOVENEXT

LOOP

 

[inlägget ändrat 2005-04-20 09:56:51 av Miljarder]

Link to comment
Share on other sites

Anjuna Moon

Det beror på (som jag tror att du redan vet) att ett fält i tabellen har värdet Null och ingen giltigt sträng. Pröva att ändar din funktion till:

 

[color="#0000ff"]Function[/color] changer(text)
[color="#0000ff"]If[/color] [color="#0000ff"]IsNull[/color](text) [color="#0000ff"]Then[/color] text=[GRÅ]""[/GRÅ]
text = [color="#0000ff"]Replace[/color](text,[color="#0000ff"]Chr[/color](141),[GRÅ]"Å"[/GRÅ])
text = [color="#0000ff"]Replace[/color](text,[color="#0000ff"]Chr[/color](142),[GRÅ]"Ä"[/GRÅ])
text = [color="#0000ff"]Replace[/color](text,[color="#0000ff"]Chr[/color](143),[GRÅ]"Å"[/GRÅ])
text = [color="#0000ff"]Replace[/color](text,[color="#0000ff"]Chr[/color](144),[GRÅ]"Å"[/GRÅ])
text = [color="#0000ff"]Replace[/color](text, [GRÅ]"'"[/GRÅ], [GRÅ]"''"[/GRÅ])
changer = text

[color="#0000ff"]End[/color] [color="#0000ff"]Function[/color] 

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...