现在要写一个程序,根据city,adress请求获取数据,把循环每一表中根据city,adress请求获取的数据更新到相应表,相应表中对应的那一行数据。这句话,可能你有点晕,说白了就是,先循环查询遍历表中city与adress的值,根据city,adress的值请求获取数据,更新到相应行中,这个表循环更新完了就跳到下个表中再循环更新,以此类推,直到全部更新。
从一张表更新到另一张表,SQL更新语句如果能实施两表有效连接并能指定用源表的特定字段(或基于该源字段的计算表达式)准确更新到被更新表的目标字段,那么就可以实现高效率的更新 *** 作。具体的实现语句根据源表、目标表结构的不同以及具体的更新方式可能会有很大的变化,没有通用的写法。需要指出一点,不是所有的情况下都可以单纯用SQL语句实现高效“从一张表更新到另一张表”的。良好设计的数据结构和较为简单的更新方式有利于用SQL语句实现已有表高效更新到其他表,有些情况下是无法简单实现SQL语句高效更新的,此时就只能退而求其次,借助编程手段或低效率的游标去解决了。
下面提供一个SQL语句一张表更新到另一张表的例句供参考:
T1(ID,Name)
T2(ID,Name)
T1和T2具有相同“ID”的姓名可能不一致,现在要求将T2中不一致的姓名更新到与T1中对应ID姓名一致,实现SQL更新语句如下
update T2 a,T1 b set a.Name=b.Name where a.ID=b.ID
建议你把先要更新的数据库表数据先删除delect 表
在需要更新的数据库用 select * into 新表 from opendatasource('SQLOLEDB','Data Source=远程数据库IPUser ID=用户名Password=密码').远程数据库名称.dbo.远程数据库表 就可以了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)