JavaScript ongelma

Ensin luon yhteyden ODBC:n kautta SQL Serveriin
ja teen kyselyn. Se menee ok. Vika tulee alert rivillä, jossa testaan substring-funktiota. Tietääkö joku pitääkö 'sCode' muuttuja formatoida jotenkin, jotta substring:n saisi toimimaan, vai mistä tässä mahtaa olla kyse?

-------------------------

var conn = new ActiveXObject("ADODB.Connection");
var connectionstring = "Provider=sqloledb; Data Source='SQLServer'; Initial Catalog='DB'; User ID='user'; Password='pwd'" conn.Open(connectionstring);

var rs = new ActiveXObject("ADODB.Recordset");
var sSQL = "SELECT Code as X FROM My_Table" rs.Open(sSQL, conn);
var sCode = rs("Code")

alert(sCode.substring(0,4))

//näin toimii kyllä:

var a = "testi"
alert(a.substring(0,4))
3166
Äänestä

Muut lukivat myös

Vastaukset 3

Vanhimmat

Jotenkin tuntuu että toi rs() ei tossa nyt toimi, minkä virheen se antaa? Tulosta se sCode ton
var sCode = rs("Code") jälkeen, että onko siellä mitään.

Äänestä
  • Sehän tässä ongelma onkin, kun ei tule virheilmoitusta, niin ei tiedä mikä on virhe. Nämä on niitä ohjelmoinnin onnen hetkiä :-(

    sCode:ssa on String tyyppinen muuttuja.
    Mutta heti kun tullaan substring-riville, niin lennetään kauniisti pihalle ilman mitään herjoja.

    sCode arvo on tämä: 7:30,0:30,6:00,
    ennen substring:n suoritusta.

    Äänestä

Rivin:
var sCode = rs("Code")

Tilalle:
var sCode = new String (rs("Code"))

Ja toimii.

Äänestä

Kommentoi aloitusta


OpenSource kirjoitti:

Ensin luon yhteyden ODBC:n kautta SQL Serveriin
ja teen kyselyn. Se menee ok. Vika tulee alert rivillä, jossa testaan substring-funktiota. Tietääkö joku pitääkö 'sCode' muuttuja formatoida jotenkin, jotta substring:n saisi toimimaan, vai mistä tässä mahtaa olla kyse?

-------------------------

var conn = new ActiveXObject("ADODB.Connection");
var connectionstring = "Provider=sqloledb; Data Source='SQLServer'; Initial Catalog='DB'; User ID='user'; Password='pwd'" conn.Open(connectionstring);

var rs = new ActiveXObject("ADODB.Recordset");
var sSQL = "SELECT Code as X FROM My_Table" rs.Open(sSQL, conn);
var sCode = rs("Code")

alert(sCode.substring(0,4))

//näin toimii kyllä:

var a = "testi"
alert(a.substring(0,4))

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu