使用SQL语句向表中插入多行数据

数据库 专栏收录该内容
2 篇文章 0 订阅

继上次使用SQL Server Management Studio创建一个教学数据库和教师关系表之后,再次使用SQL向表中添加数据。
图形界面就不多说了,自己摸索一下就会了,这次还是继续新建查询打开编辑区,要插入数据首先要知道插入的语法格式,教科书的操作是这样的:

    INSERT INTO <表名> [ (<列名1> [,<列名2>...] ) ] VALUES(<>)

好像看起来蒙蒙的,括号一大堆,hh~
不过教科书都是有解释的,<表名>是指要添加新纪录的表,<列名>是可选项,指定待添加数据的列,VALUES字句指定待添加数据的具体值。
也不知道看懂了没,我们直接先上手给我们上次创建的教师表中添加一条记录吧。

INSERT INTO T(TNO,TN,Sex,Age,Prof,Sal,Comm,Dept)--圆括号及内列名可省略,但不建议省略
VALUES('T1','李力','男',47,'教授',1500,3000,'计算机')

运行之后提示有错误,
在这里插入图片描述
这里排查一下,应该是数据类型长度不够,在T表右击设便可查看该表的各列的属性
在这里插入图片描述
除Sex属性之外,其它属性似乎都没什么问题,尝试将Sex列的数据长度加到2:

ALTER TABLE T
ALTER COLUMN 
Sex CHAR(2)

运行之后,再次回到刚才的插入数据,再次调试执行,插入成功。我们继续在旁边的表名上右击,选择编辑前200行,进去之后便可看到我们刚才添加进去的记录。
在这里插入图片描述
我们看到,第一条记录已经添加成功,接下来我们添加多行记录:

INSERT INTO T(TNO,TN,Sex,Age,Prof,Sal,Comm,Dept)--后面的values中的数据的排序要和这里的列名排序相同,此处若省略列名表,则values的数据要和表定义时的列名顺序一致
VALUES('T2','王平','女',28,'讲师',800,1200,'信息'),
('T3','刘伟','男',30,'讲师',900,1200,'计算机'),
('T4','张雪','女',51,'教授',1600,3000,'自动化'),
('T5','张兰','女',39,'副教授',1300,2000,'信息')

调试后发现又出错,而且和上次的错误一样,
在这里插入图片描述
这次的数据只有Prof的字节长度增加了,因此判断有可能是因为Prof的数据长度过小,则再修改Prof的长度到8字节之后,执行数据插入,插入成功!
在这里插入图片描述
反思:上次在创建表的时候,由于设计思路不够严谨,给属性分配的数据长度不足,导致在本次插入时出现了一些意外故障,以后应在设计初期充分考虑各属性的取值范围,为后期数据库的正常运行和使用提供保证。

  • 8
    点赞
  • 0
    评论
  • 53
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

参与评论 您还未登录,请先 登录 后发表或查看评论
©️2022 CSDN 皮肤主题:黑客帝国 设计师:我叫白小胖 返回首页

打赏作者

野蛮生长的小VV

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值