Mysql version: 5.05.25
Запрашиваю у базы значения всей таблицы, потом пытаюсь прочитать но в дебаг выводится:
DebugLog:0. Name =
DebugLog:0. Name =
DebugLog:0. Name =
а потом ошибка
Unhandled Exception:Attempt to access field or method of Null object
посмотрел в дебагере в значении где должны быть данные там Null тоесть данные не получились или не распознались?
record.fields[0].value = Null
а имя поля есть, например record.fields[0].name = "id" тоесть оно передалось.
Стандартный пример не работает.
SuperStrict
Framework BaH.DBMySQL
Import BRL.filesystem
Local db:TDBConnection = LoadDatabase("MYSQL", "sorcs", Null, 0, "root", "")
If Not db Then
DebugLog("Didn't work...")
End
End If
If db.hasError() Then
errorAndClose(db)
End If
Local names:String[][] = [ ..
[ "Alfred", "Aho" ], ..
[ "Brian", "Kernighan" ], ..
[ "Peter", "Weinberger" ] ]
If db.isOpen() Then
db.executeQuery("DROP TABLE if exists person")
Local s:String = "CREATE TABLE if not exists person (id integer primary key AUTO_INCREMENT, " + ..
" forename varchar(30)," + ..
" surname varchar(30), stamp datetime )"
db.executeQuery(s)
If db.hasError() Then
errorAndClose(db)
End If
For Local i:Int = 0 Until names.length
Local query:TDatabaseQuery = db.executeQuery("INSERT INTO person values (NULL, '" + names[i][0] + "', '" + names[i][1] + "', now())")
DebugLog "LastInserted id = " + query.lastInsertedId()
If db.hasError() Then
errorAndClose(db)
End If
Next
Local query:TDatabaseQuery = db.executeQuery("SELECT * from person")
If db.hasError() Then
errorAndClose(db)
End If
While query.nextRow()
Local record:TQueryRecord = query.rowRecord()
DebugLog(record.getInt(0) + ". Name = " + record.getString(1) + " " + record.getString(2))
DebugLog TDBDateTime(record.value(3)).format() 'тут вылет потому что record.value(3) = null
Wend
db.close()
End If
Function errorAndClose(db:TDBConnection)
DebugLog(db.error().toString())
db.close()
End
End Function
В чем проблема,не пойму, подскажите.