PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
Database
[SQL ] INSERT INTO ... SELECT 的问题
楼主:
Goldbach
(Ray)
2015-02-07 00:01:33
数据库名称:Microsoft SQL Server
数据库版本:2000
内容/问题描述:
假设有一个触发程式,使用INSERT语法如下:
INSERT INTO TABLE_A (COL_1, COL_2) SELECT * FROM deleted
小弟有个疑问,TABLE_A 有2个字段写上面这样,
如果有20个字段那需要写非常长,
而且 TABLE_A 的字段只要新增、删除或修改,这个触发程式就失效了,
所以小弟希望找到改写语法,不要包含字段名称的资讯,
这样比较有弹性,感谢~
作者:
rockchangnew
(rock)
2015-02-07 17:13:00
基本上建议指名字段,用*较不建议
楼主:
Goldbach
(Ray)
2015-02-07 17:57:00
有没有办法动态查所有字段名称,再放在INSERT后面?
作者:
Ammenze
(蓝天白云)
2015-02-09 10:11:00
先确保你Table_A跟select的Table字段设定都一样,再下Insert into Table_A Select * from....就可以了
作者:
moyasi
(Simple Life)
2015-02-09 15:02:00
就算有100字段 也通通打出来吧 养成好习惯不建议用*
作者: iFEELing (ing)
2015-02-10 00:05:00
1. 对 没错 要写非常长2. 只要修改就一定会让相依的物件失效 因为无法确定修改后这些字段是否真的还是你想要的东西指定字段名称的话 新增字段就不会受影响但是 select * 就会死掉 因为数量不对修改的话 如果DBMS只对数量不对名字 型态又符合可能有机会写得进去 (?用 select * 的写法删除字段的话应该用*或字段名称都会死掉
继续阅读
[SQL ] SQL 的查询问题
yj0803
[SQL ] 安装 SQL Server 2014 Express 的问题
Goldbach
[SQL ] 关于用户端使用Server上网页的问题
jason81418
[SQL ] SQL2000 查询用户端ip
jason81418
[SQL ] -501的问题
clv
Re: [SQL ] MSSQL 用户端工具远端连线的问题
Goldbach
Re: [SQL ] MSSQL 用户端工具远端连线的问题
Goldbach
[SQL ] MSSQL 用户端工具远端连线的问题
Goldbach
[SQL ] error code 2006
brad0000
[SQL ] 请问MSSQL Server 2000可不可以在Windows 7上使用?
Goldbach
Links
booklink
Contact Us: admin [ a t ] ucptt.com