sql怎么在数据库中插入一列数据?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql怎么在数据库中插入一列数据?相关的知识,希望对你有一定的参考价值。

参考技术A

    在建立完数据库表和列之后我们需要对数据库进行语句的添加,针对于如何在数据库中进行数据的添加,今天小编为大家提供了两种方式来进行数据的添加,希望大家速学速懂

    在下图中我们可以看到的是一个Student表,其中有StudentNo、StudentName、GradeId、Phone这几列,这里我们就针对这个数据表来进行数据添加的具体操作

    方法一:

    首先在表中右击然后选择里面的编辑前200行

    弹出如下图中所示的内容,这里我们可以看到的是在表中的列和图中的列是相互对应的。

    这里我们对这几列进行数据添加操作,(手动添加数据)

    添加完毕如图中5所示的几个内容之后,我们这边在表中右击选择执行

    执行完毕之后,选择新建查询语句,然后输入如下图中所示的查询语句,

    select  * from  Student

    输入完毕之后,选择全部内容,然后我们选择执行

    执行完毕之后我们呢可以看到你所插入的数据内容

sql中往一个表中插入数据但是其中一列需要从另一张表查状态,求指导

其中T_Message表中有(id,sender,receiver,hasAttachment,state)hasAttachment是bit类型,只有0或者1
T_AttachMessage表中有(id,msgId,filename,filesize,filedesc)
现在是往T_AttachMessage表中插入数据,但是msgId是从T_Message中查询(如果T_Message表中的hasAttachment为1那么将T_Message表中的id插入到T_AttachMessage表中)T_AttachMessage表中的其他数据另外插入.求指点呀!急!

你这个问题问的很含糊,你要明确T_AttachMessage除msgId的其他字段来自哪个表?且这个表与T_Message的关联条件是什么?这样sql就好写了。还有要求不明确,如果hasAttachment为1那么将T_Message表中的id插入到T_AttachMessage表中,那如果为0呢?是不插入吗?还是插入了记录但是为0的这个地方的msgId为空?你需要明确以上问题后,才能让别人写出正确的sql,你也可以把题目直接拷进去,别人能看得懂。我觉得你的msgId要插入是有关联条件的,不是随便选一个hasAttachment为1的就能插入追问

T_AttachMessage除msgId的其他字段是在页面自己手动填入的,如果hasAttachment为1那么将T_Message表中的id插入到T_AttachMessage表中的msgId,如果为0的话 ,什么都不插入!

追答

这样,我举个例子你看一下:
如果是页面添加数据的话,那么就是说id,filename,filesize,filedesc相当于这些数据是页面代入的值,插入数据这样就可以了,
insert into T_AttachMessage(id,msgId,filename,filesize,filedesc)
select 页面id, b.id, 页面filename, 页面filesize, 页面filedesc
from T_Message a, T_AttachMessage b
where a.** = b.**
and a.hasAttachment = 1
and b.id = 页面id;
我说的意思其实就是你代码代入的数据要跟某些表关联才能产生结果啊?不然怎么会有数据呢?
你总不可能比如我在页面添加了数据,然后可以随便从T_Message找个hasAttachment为1的相关id插入吧?

追问

492358238 你加我吧,我给你细说一下,这上面打字有限制

追答

上班不能上qq,我们qq软件是禁掉的

参考技术A insert into T_AttachMessage (xx,xx) select xx,xx from T_Message where T_Message.hasAttachment
=1追问

这样不行呀,这样只能插入T_MessageAttach中的(MsgID)
语句难道这样?这样写在后台代码里,貌似有点别扭呀!
insert into T_MessageAttach(MsgID,[FileName],FileDesc,FileSize) values('select ID from T_Message where HasAttachment=1','aa','bb','100')

追答

有哪些列你就 select 哪些列啊

以上是关于sql怎么在数据库中插入一列数据?的主要内容,如果未能解决你的问题,请参考以下文章

sql怎么在数据库中插入一列数据?

sql中,如何插入一列数字从1到100

sql中往一个表中插入数据但是其中一列需要从另一张表查状态,求指导

sql server 中有一张表,我想把表中两列的数据合并后插入本表中另一列!请问怎么实现

SQlite 怎么在已经创建的表中插入一列

在mysql中为某一行的某几列插入数据怎么写