0
私は何が間違っているのか分かりません。ここでは、アクセスデータベースを照会しているJavaScriptコードをいくつか紹介します。すべてのRS.fields [i]は未定義ですが、正しい数の行が返されます。これを引き起こす原因は何ですか?すべての結果はアクセスデータベースから未定義です
adOpenForwardOnly = 0;
adLockReadOnly = 1;
adCmdText = 1;
var data = new Array();
var myConnect = 'Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\\asdf.mdb';
var ConnectObj = new ActiveXObject('ADODB.Connection');
var RS = new ActiveXObject('ADODB.Recordset');
var sql = 'SELECT * FROM TTT WHERE XXX = "'+xxx+'" AND YYY = "'+yyy+'" AND ZZZ = '+zzz+' AND AAA = "'+aaa+'" AND BBB = #'+bbb+'# ';
//alert(sql);
ConnectObj.Open(myConnect);
RS.Open(sql, ConnectObj);
RS.MoveFirst();
while(!RS.eof){
data.push(new FFFRow(
'a',
parseFloat(RS.fields[1]),
new String(RS.fields[8]),
GetDateFromString(RS.fields[9]),
GetDateFromString(RS.fields[10]),
GetDateFromString(RS.fields[4]),
GetDateFromString(RS.fields[12]),
parseFloat(RS.fields[13]),
parseFloat(RS.fields[14]),
new String(RS.fields[15]),
parseFloat(RS.fields[16]),
parseFloat(RS.fields[17]),
parseFloat(RS.fields[18]),
parseFloat(RS.fields[19]),
'',
'',
parseFloat(RS.fields[0]),
new String(RS.fields[3]),
new String(RS.fields[2])
)
);
RS.MoveNext();
}
SQLステートメントをつかみ、それをMS Accessの新しいクエリに直接貼り付けてください。 –
私はこれをやってきましたし、クエリはアクセスでうまく動作します。私は行の正しい数を取得しているので、それは本当に奇妙ですが、すべてが定義されていません – sooprise
出力RS.fields [1] .nameは、列名を取得するかどうか参照してください。または、RS = ConnectObj.Execute(sql)を設定します。 RS.openの代わりに。 –