我有布尔字段的对象,如
@Entity
@Table(name = "USERS")
public class User {
@Id
@GeneratedValue
@Column(name = "ID")
private Integer id;
@Column(name = "ACTIVE")
private Boolean active = true;
}
AND查询创建
CREATE TABLE IF NOT EXISTS USERS(
ID SERIAL PRIMARY KEY,
ACTIVE SMALLINT ,
LOGIN CHAR(255) NOT NULL,
NAME CHAR(255) NOT NULL,
PASSWORD CHAR(255) NOT NULL,
ROLE INTEGER NOT NULL REFERENCES ROLE(ID)
);
当我尝试获取用户对象时,我有下一个异常ERROR:operator不存在:smallint = boolean
答案 0 :(得分:3)
在PostgreSQL中,SMALLINT
映射到Short
,BOOLEAN
映射到Boolean
(因此得名)。
您可以决定是更改班级还是表格。
答案 1 :(得分:2)
尝试添加:
import 'dart:math';
import 'package:flutter/material.dart';
import 'dart:async';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Reaktionstest',
theme: ThemeData(
primarySwatch: Colors.yellow,
visualDensity: VisualDensity.adaptivePlatformDensity,
),
home: MyHomePage(title: 'Reaktionsspiel'),
);
}
}
class MyHomePage extends StatefulWidget {
MyHomePage({Key key, this.title}) : super(key: key);
final String title;
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
final List<String> zeilen = ['1', '2','3','4','5','6','7','8','9','10'];
int _counter = 10;
var startcolor = Colors.red;
Timer _timer;
var hintergrundFarbe = Colors.transparent;
var wert = 0;
var zufallsButtonFarbe = Colors.blue;
int _zufallsButton = 0;
int _treffer = -1;
bool gestartet = false;
bool ende = true;
bool vorbei = false;
double bildschirmbreite = 0;
double bildschirmhoehe = 0;
double dotDurchmesser = 0;
int dotZeilen = 0;
int buttongedrueckt(int welcherbutton) {
if (ende == false) {
_treffer = -1;
}
ende = true;
if (gestartet == false) {
gestartet = true;
_timer = Timer.periodic(Duration(seconds: 1), (timer) {
setState(() {
_counter--;
startcolor = Colors.green;
if (_counter < 1) {
_timer.cancel();
_counter = 10;
_zufallsButton = 0;
startcolor = Colors.red;
vorbei = true;
Future.delayed(Duration(milliseconds: 1500), () {
gestartet = false;
ende = false;
vorbei = false;
});
}
});
});
}
if (vorbei == false) {
if (_zufallsButton == 0 || welcherbutton == _zufallsButton) {
if (_counter < 1) {
} else {
_treffer = _treffer + 1;
}
Random random = new Random();
_zufallsButton = random.nextInt(70) + 1;
setState(() {
return _Singlerow(_zufallsButton.toString());
});
}
}
}
int dotZeilenBerechnen() {
bildschirmbreite = MediaQuery.of(context).size.width;
var padding = MediaQuery.of(context).padding;
bildschirmhoehe =
MediaQuery.of(context).size.height - padding.top - padding.bottom;
dotDurchmesser = bildschirmbreite / 7;
dotZeilen = ((bildschirmhoehe - 88) / dotDurchmesser).toInt();
return dotZeilen;
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: SafeArea(
child: Container(
child: Column(
children: <Widget>[
Container(
width: double.infinity,
alignment: Alignment.centerRight,
color: startcolor,
padding: EdgeInsets.symmetric(vertical: 24.0, horizontal: 12.0),
child: Text('$_counter' " /" '$_treffer',
style: TextStyle(fontSize: 40.0, fontWeight: FontWeight.bold)),
),
Expanded(
child: SizedBox(
child:
ListView.builder(
itemCount: zeilen.length,
itemBuilder: (context, i) {
//zeilen is rows in english
return _Singlerow(zeilen[i]);
},
)
)
),
],
),
)));
}
}
class Singlerow extends StatefulWidget {
Singlerow({Key key, this.title}) : super(key: key);
final String title;
@override
_Singlerow createState() => _Singlerow('');
}
class _Singlerow extends State<Singlerow> {
final String title;
_Singlerow(this.title);
final Color hintergrundFarbe = Colors.transparent;
final Color zufallsButtonFarbe = Colors.blue;
int _zufallsButton = 14;
@override
Widget build(BuildContext context) {
return Container(child:
Row(children: <Widget>[
Expanded(
child: FloatingActionButton(
onPressed: () =>
_MyHomePageState().buttongedrueckt(int.parse(title) * 7 - 6),
backgroundColor: _zufallsButton.toInt() == int.parse(title) * 7 - 6
? zufallsButtonFarbe
: hintergrundFarbe,
)),
Expanded(
child: FloatingActionButton(
onPressed: () =>
_MyHomePageState().buttongedrueckt(int.parse(title) * 7 - 5),
backgroundColor: _zufallsButton.toInt() == int.parse(title) * 7 - 5
? zufallsButtonFarbe
: hintergrundFarbe,
)),
Expanded(
child: FloatingActionButton(
onPressed: () =>
_MyHomePageState().buttongedrueckt(int.parse(title) * 7 - 4),
backgroundColor: _zufallsButton.toInt() == int.parse(title) * 7 - 4
? zufallsButtonFarbe
: hintergrundFarbe,
)),
Expanded(
child: FloatingActionButton(
onPressed: () =>
_MyHomePageState().buttongedrueckt(int.parse(title) * 7 - 3),
backgroundColor: _zufallsButton.toInt() == int.parse(title) * 7 - 3
? zufallsButtonFarbe
: hintergrundFarbe,
)),
Expanded(
child: FloatingActionButton(
onPressed: () =>
_MyHomePageState().buttongedrueckt(int.parse(title) * 7 - 2),
backgroundColor: _zufallsButton.toInt() == int.parse(title) * 7 - 2
? zufallsButtonFarbe
: hintergrundFarbe,
)),
Expanded(
child: FloatingActionButton(
onPressed: () =>
_MyHomePageState().buttongedrueckt(int.parse(title) * 7 - 1),
backgroundColor: _zufallsButton.toInt() == int.parse(title) * 7 - 1
? zufallsButtonFarbe
: hintergrundFarbe,
)),
Expanded(
child: FloatingActionButton(
onPressed: () =>
_MyHomePageState().buttongedrueckt(int.parse(title) * 7),
backgroundColor: _zufallsButton.toInt() == int.parse(title) * 7
? zufallsButtonFarbe
: hintergrundFarbe,
)),
]),
);
}
}