SQL Server Merge数据
--导数据 Merge
MERGE os_staff AS t USING (select ear_code,sta_code,sta_pwd,sta_name,sta_dpt_code,job_code,sta_join_date,sta_sex,sta_status from ITSV123.his000.dbo.os_staff) AS s ON (t.ear_code = s.ear_code and t.sta_code = s.sta_code and t.sta_name != s.sta_name) WHEN MATCHED THEN update set t.sta_name = s.sta_name; WHEN NOT MATCHED THEN insert values(s.ear_code,s.sta_code,s.sta_pwd,s.sta_name,s.sta_dpt_code,s.job_code,s.sta_join_date,s.sta_sex,s.sta_status)
--查询数据库端口号 exec sys.sp_readerrorlog 0, 1, 'listening'
--批处理执行SQL @ECHO OFF SET dbhost=主机名(例如:127.0.0.1) SET dbuser=用户名(例如:sa) SET dbpasswd=用户密码(例如:admin) set dbName=数据库名称(例如:test) SET sqlpath=%~dp0(此语句可以保证.bat同级目录下的.sql文件能被找到) set sqlfile=update.sql(需要执行执行sql的文件) ::执行SQL脚本 osql -S %dbhost% -U %dbuser% -P %dbpasswd% -d %dbName% -i %sqlpath%%sqlfile% ECHO 完成! PAUSE @ECHO Done!