我尝试将dbite从SQLite更改为PostgreSQL。一些查询返回“字符变化=整数”。
OrmLite实体(订阅实体):
@DatabaseTable(tableName = "subscription")
public class Subscription {
public static final String SUBSCRIPTION_ID = "id";
@DatabaseField(generatedId = true, columnName = SUBSCRIPTION_ID)
private int subscriptionId;
public static final String BUYER = "buyer";
@DatabaseField(foreign = true, columnName = BUYER)
private BuyerUser buyer;
public static final String SHOP = "shop";
@DatabaseField(foreign = true, columnName = SHOP)
private Shop shop;
}
商店实体:
@DatabaseTable(tableName = "shop")
public class Shop {
public static final String SHOP_ID_FIELD = "id";
@DatabaseField(generatedId = true, allowGeneratedIdInsert = true, columnName = SHOP_ID_FIELD)
private int shopId;
public static final String SHOP_NAME_FIELD = "shop_name";
@DatabaseField(columnName = SHOP_NAME_FIELD)
private String shop_name;
}
商店ID类型为int,但在pgAdmin:
CREATE TABLE subscription
(
id serial NOT NULL,
buyer character varying(255),
shop character varying(255),
CONSTRAINT subscription_pkey PRIMARY KEY (id)
)
商店外国字段类型是char。怎么了?
答案 0 :(得分:0)
这是我的错。字段类型真的是char。