这句SQL insert怎么写?

showboat 2007-03-31 02:34:44
有三张表social.grant4,social.soclogin,social.paysoc
现在:
select social.soclogin.personid from social.soclogin,social.paysoc
where social.soclogin.personid=social.paysoc.personid and social.paysoc.ispay='1';
将选出的所有social.soclogin.personid插入到social.grant4.personid应该怎么写?
...全文
337 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
showboat 2007-03-31
  • 打赏
  • 举报
回复
奇怪了,insert没有报异常,select反而报异常
showboat 2007-03-31
  • 打赏
  • 举报
回复
GRANT1,GRANT2,GRANT3还没有插入数据
showboat 2007-03-31
  • 打赏
  • 举报
回复
但奇怪的是GRANT1,GRANT2,GRANT3都能访问
唯独GRANT4不行
paoluo 2007-03-31
  • 打赏
  • 举报
回复
這是你的權限的問題,不是這個SQL本身的問題。
showboat 2007-03-31
  • 打赏
  • 举报
回复
试了试,插入之后报异常?

java.sql.SQLException: [SQL0551] 没有权限使用SOCIAL中类型为*FILE的对象GRANT4。
believe209 2007-03-31
  • 打赏
  • 举报
回复
明白了,原来是可以省略的!
free_pop2k 2007-03-31
  • 打赏
  • 举报
回复
查看联机帮助就知道了
paoluo 2007-03-31
  • 打赏
  • 举报
回复
在MS SQL中,沒什麼區別



INSERT 陳述式可新增一個或以上的資料列到資料表中。簡化後的 INSERT 具有下列格式:

INSERT [INTO] table_or_view [(column_list)] data_values


--------
由此看出,INTO可以省略。

believe209 2007-03-31
  • 打赏
  • 举报
回复
我不知道insert 和insert into 有什么区别 ?
谁能给讲解一下吗?
paoluo 2007-03-31
  • 打赏
  • 举报
回复
對,需要做個循環。

但是用insert ... select 同樣可以插入的。
showboat 2007-03-31
  • 打赏
  • 举报
回复
用insert values是不是要用个for循环一个一个insert?
paoluo 2007-03-31
  • 打赏
  • 举报
回复
你試試上面的寫法。

這種情況,你用insert values 就很麻煩的。
showboat 2007-03-31
  • 打赏
  • 举报
回复
我觉得应该insert values 吧
showboat 2007-03-31
  • 打赏
  • 举报
回复
对,变量是我在JSP中定义的,怎么引用到sql里面?
paoluo 2007-03-31
  • 打赏
  • 举报
回复
意思應該是另外幾個參數是變量了,這麼寫

insert social.grant4(personid,yearfr,monthfr,yearto,monthto,fee)
select social.soclogin.personid,@yfr,@mfr,@yto,@mto,@fee
from social.soclogin,social.paysoc
where social.soclogin.personid=social.paysoc.personid and social.paysoc.ispay='1'
showboat 2007-03-31
  • 打赏
  • 举报
回复
social.grant4还有其他数据yearfr,monthfr,yearto,monthto,fee
都通过int yfr,int mfr,int yto,int mto,float fee进行insert

该怎么写?
paoluo 2007-03-31
  • 打赏
  • 举报
回复
直接插入即可

insert social.grant4(personid)
select social.soclogin.personid from social.soclogin,social.paysoc
where social.soclogin.personid=social.paysoc.personid and social.paysoc.ispay='1'
gahade 2007-03-31
  • 打赏
  • 举报
回复
insert into social.grant4(personid)
select social.soclogin.personid
from social.soclogin,social.paysoc
where social.soclogin.personid=social.paysoc.personid and social.paysoc.ispay='1'

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧