我正在使用一个带有users
,products
和表的简单数据库orders
,但以前products
我认为该表的设计不是很好,因为对于该weights
列,它只有一个数字,但不清楚它的单位是磅还是盎司。
我试图找到有关如何将磅和盎司指定为桌子重量单位的文档,但我没有成功。谁能建议一种方法来做到这一点?该列再次被简单地称为weight
,我如何清楚地表明它从 2 盎司开始到 1 磅作为 Postgres 内部的重量单位?
我正在使用一个带有users
,products
和表的简单数据库orders
,但以前products
我认为该表的设计不是很好,因为对于该weights
列,它只有一个数字,但不清楚它的单位是磅还是盎司。
我试图找到有关如何将磅和盎司指定为桌子重量单位的文档,但我没有成功。谁能建议一种方法来做到这一点?该列再次被简单地称为weight
,我如何清楚地表明它从 2 盎司开始到 1 磅作为 Postgres 内部的重量单位?
我试图运行迁移文件来创建用户表,但我不断收到以下错误:
Error: Not run migration 1604169742656_add-users-table is preceding already run migration 1604024614269_table-comments
由于时间紧迫,我通过创建一个新数据库来解决它,但是有人知道这个错误的解释是什么吗?我需要先删除当前表吗?
这是我试图运行的迁移:
exports.up = pgm => {
pgm.sql(`
CREATE TABLE users (
id SERIAL PRIMARY KEY,
created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
bio VARCHAR(400),
username VARCHAR(30) NOT NULL
);
`);
};
我创建了一个 Ruby on Rails 应用程序只是为了向同事演示,然后删除了该应用程序,但我没有删除同样使用 Postgresql 创建的数据库。
我像这样进入 posgresql:
psql postgres
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
--------------------------------------+--------+----------+-------------+-------------+-------------------
GenerateApp_development | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
GenerateApp_test | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
GeneratorApp_development | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
GeneratorApp_test | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
Overtime_development | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
Overtime_test | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
RoutingApp_development | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
RoutingApp_test | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
dancortesPortfolio_development | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
dancortesPortfolio_test | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
freelance_camp_documents_development | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
freelance_camp_documents_test | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
freelance_camp_proposal_development | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
freelance_camp_proposal_test | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
postgres | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
template0 | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/danale +
| | | | | danale=CTc/danale
template1 | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/danale +
| | | | | danale=CTc/danale
(17 rows)
我想删除那些说 RoutingApp_development 和 test 的。
postgres=# DROP DATABASE RoutingApp_development;
ERROR: database "routingapp_development" does not exist
我在上面得到了那个错误。我试图在网上搜索为什么会发生这种情况,但我没有成功找到答案,请帮忙。
我创建了一个小型开发数据库以供练习。它有一个cities
带有列cityname
和的表state
。里面有“cityname
辛辛那提”,长名字对吗?
mytestdb=# SELECT * FROM cities;
cityid | cityname | state
--------+------------+-------
12345 | Cincinnati | Ohio
(1 row)
我不清楚在尝试添加“旧金山”时如何以及为什么会收到此错误消息。
mytestdb=# INSERT INTO cities VALUES ('San Francisco','CA'); ERROR: value too long for type character varying(5)