如何给数据库中的表插入数据?

时间煮雨
@R星校长

为表的所有字段插入数据

向表中插入数据最简单的方法就是使用INSERT语句。INSERT语句需要你声明要插入内容的表(table)名和内容(values)

语法规则为: `INSERT INTO 表名 (字段名) VALUES (内容);`
举个例子

假设我们现在有一张空表Mall_products2如下:
1
表结构如下:
如何给数据库中的表插入数据?_第1张图片
接下来,我们要往空表中插入一条内容,插入(INSERT)语句为:

INSERT INTO Mall_products2 (
    id,
    country_name,
    country_id
)
VALUES (
    1,
    'Span',
    34
);

结果为:
如何给数据库中的表插入数据?_第2张图片
插入过程如下:
如何给数据库中的表插入数据?_第3张图片
我们检索到了一条数据的结果,一条完整的内容已经被填入了空表中。

分析:
在插入数据时,我们指定了所有的字段名,这样的好处是:即使我们打乱了原本字段的排列顺序,只要插入的数据与之匹配,插入都不会出错。其实,还有一种偷懒的办法,就是我们可以不填字段名,但是这样的话,就必须老老实实的按字段顺序来填入相应的数据。
为表的指定字段插入数据

有的时候,我们并不想往某个字段内插入完完整整的值,或者说,有的时候我们并没有完整的数据可以整整齐齐插入某个字段。这时候就需要我们只为指定好的字段插入数据了,其他的我们都不用管。换句话说,就是:
为表的指定字段插入数据,就是在INSERT中只向部分插入值,而其他字段的值为表定义时的默认值。

举个例子
 
假设我们现在有一张空表Mall_products2如下:
5
我们忽略字段countery_name,为表Mall_products2插入内容:

INSERT INTO Mall_products2 (
    id,
    country_id
)
VALUES (
    1,
    86
);

结果为:
如何给数据库中的表插入数据?_第4张图片
插入过程如下:
如何给数据库中的表插入数据?_第5张图片
可以看到,由于我们建表时给字段countery_name设置的默认值为Null,所以插入数据时忽略该字段,就会默认给它赋值为空。

为表同时插入多条记录

当然,一条一条插入数据很繁琐,有没有“打包”的方法呀?有,还有一种方法能同时让我们插入好几条数据。

语法规则为: INSERT INTO 表名 (字段名) VALUES (内容1), (内容2), (内容3); 。
举个例子

 
还是那张空表Mall_products2,我们要为它同时插入3条数据内容。

INSERT INTO Mall_products2 (id,country_id)
VALUES (1,86),
(2, 34),
(3,39);

结果为:
如何给数据库中的表插入数据?_第6张图片
插入过程如下:
如何给数据库中的表插入数据?_第7张图片
有结果可以看到,命令执行后,表Mall_products2中增加了3条记录,它的字段idcountry_id都为指定的值,而字段country_name为默认的值。

好了,下面轮到你们来上手试试了!如何给数据库中的表插入数据?_第8张图片

你可能感兴趣的:(hive,mysql,sql,数据库)