数据库插入 *** 作?

数据库插入 *** 作?,第1张

在SQL语言中,数据插入语句INSERT通常有两种形式,一种是一次插入一条元组,另一种是一次插入一个子查询结果,即一次插入多条元组。插入一条元组

在SQL语言中,插入一条元组的语句格式如下:

INSERT

INTO<表名>[(<属性名1>[,<属性列>...1/

VALUES(<常量1>[,<常量2...)

其功能是将指定的元组插入到指定的关系中,其中属性列的顺序要与常量值的顺序一一对应,常量i的值赋给属性列i(i=1...).

在INTO子句中没有出现的属性列,新值在这些列上取空值。注意,表定义中不许为空的列不能取空值,否则会出错。有时可以省略属性列表,但常量的列表顺序要求必须与指定关系的实际属性列顺序一致,且新插入的记录必须在每个属性列上均有值。

insert into是mysql中最常用的插入语句,它有6种写法。

如果插入的记录是数字的话要在数字的逗号后面加n:

通过以上实例我们可以看到insert into语句只能向原表中插入于其字段对应的数据,那么能不能通过insert into语句来把其他表的数据插入到原表中呢:

在MySQL中set方法:

ModifyStatement.Set Method修改语句 set方法

Sets key and value. 设置键和值。

由于insert into语句是一个插入性的语句,所以它的功能要么向指定的表插入数据

也许你看到这个SQL语句是正确的,就觉得这样应该也可以:

mysql>mysql>insert into 4a set sname=4ainall.sname

ERROR 1064 (42000): You have an error in your SQL syntaxcheck the manual that corresponds to your MySQL server version for the right syntax to use near 'mysql>insert into 4a set sname=4ainall.sname' at line 1

或者这样也可以:

mysql>mysql>insert into 4a set sname="赵六"

ERROR 1064 (42000): You have an error in your SQL syntaxcheck the manual that corresponds to your MySQL server version for the right syntax to use near 'mysql>insert into 4a set sname="赵六"' at line 1

然后这样也是不可用:

mysql>insert into 4a select * from 4ainall set sname=4ainall.sname

ERROR 1064 (42000): You have an error in your SQL syntaxcheck the manual that corresponds to your MySQL server version for the right syntax to use near 'from 4ainall set sname=4ainall.sname' at line 1

可以看出由于select是作用于4inall这个表的,而set方法也只能在select语句中,这就直接导致set方法只能作用于4inall这个表,而无法作用于4a这个表。

但是如果我们不用select语句的话编译器又怎么会知道4inall表中的数据在哪里?

显然select是用于查的而set则是一个用于改的方法,两者无法结合在一起——insert into set语句当然也不能用于将其他表的数据插入到原表中了。

INSERT INTO是sql数据库中的语句,可以用于向表格中插入新的行,用于向表中插入新记录。

语法:insert into +表名(表中的字段)value(字段所对应的记录)。

a、第一种形式无需指定要插入数据的列名,只需提供被插入的值即可。

b、第二种形式需要指定列名及被插入的值。

注意:

insert into +表名(表中的字段)values(字段所对应的记录)(字段所对应的记录);INSERT INTO table_name VALUES (value1,value2,value3,...),(value1,value2,value3,...);用逗号隔开,括号括起来,加多少行数据就写多少个。

如果略掉了目标表的列的话,则默认会对目标表的全部列进行数据插入,且SELECT后面的列的顺序 必须和目标表中的列的定义顺序完全一致 才能完成正确的数据插入,这是一个很容易被忽略的地方值得注意。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11854813.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存