• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: 小 中 大 | 推荐给好友 上一篇 | 下一篇

Postgresql新手上路之插入数据

发布: 2007-7-04 17:55 | 作者: admin | 来源:  网友评论 | 查看: 26次 | 进入软件测试论坛讨论

领测软件测试网

插入数据
    在创建一个表的时候,它里面没有数据。在数据库可以有点用之前 要做的第一件事就是向里面插入数据。数据在概念上是每次一行地插入的。 我们当然可以每次插入多行, 但是的确没有办法一次插入少于一行的数据。即使你只知道几个字段 的数值,那么你也必须创建一个完整的行。

    要创建一个新行,我们使用 INSERT 命令。 这条命令要求提供表名字和给表中每个字段提供一个数值。 比如,假设来自 Chapter 5 的产品表:

CREATE TABLE products (
    product_no integer,
    name text,
    price numeric
);
    下面是一个向表中插入一行的例子:

INSERT INTO products VALUES (1, 'Cheese', 9.99);
    数据值是按照这些字段在表中出现的顺序列出的,并且用逗号分隔。 通常,数据值是文本(常量),但也允许使用标量表达式。

    上面的语法的缺点是你必须知道表中字段的顺序。要避免这个问题, 你也可以明确地列出字段。比如,下面的两条命令都有和上面那条 命令一样的效果:

INSERT INTO products (product_no, name, price) VALUES (1, 'Cheese', 9.99);
INSERT INTO products (name, price, product_no) VALUES ('Cheese', 9.99, 1);
    许多用户认为明确列出字段名字是个好习惯。

    如果你没有获得所有字段的数值,那么你可以省略其中的一些。 这个时候,这些字段将被填充为它们的缺省数值。比如,

INSERT INTO products (product_no, name) VALUES (1, 'Cheese');
INSERT INTO products VALUES (1, 'Cheese');

    第二种形式是 PostgreSQL 的一个扩展。 它从左开始填充我们给出的数值个数的字段数,其他的将是缺省。

    为了保持清晰,你也可以明确要求缺省值,用于独立的字段或者用于 整个行:

INSERT INTO products (product_no, name, price) VALUES (1, 'Cheese', DEFAULT);
INSERT INTO products DEFAULT VALUES;

    提示: 要进行"批量装载",也就是说,插入大量数据, 我们可以看看 COPY 命令。 它不像 INSERT 命令那么灵活,但是更高效。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:[email protected] 电话:010-51297073

软件测试 | 领测国际 | ISTQB | ISTQB官网 | TMMi | TMMi认证 | 国际软件测试工程师认证 | 领测软件测试网