精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● VB和Basic>>〓〓...数据库技术...〓〓>>Re:什么SQL语句可以修改字段名(sql_server)?

主题:Re:什么SQL语句可以修改字段名(sql_server)?
发信人: lzzzl(lzzzl)
整理人: winsy(2003-03-11 08:29:15), 站内信件
请参考ORACLE版本的BAT脚本,它可和成SQL语句,SQLSERVER应该差不多:

@echo off

if "%4"=="" goto error
set _tb=%1
set _old=%2
set _new=%3
set _type=%4
set _tmp=%5

set _tmp=fdTmp
if not "_tmp%"=="" goto skip1
set _tmp=fdTmp
:skip1

echo {>output.sql
echo // 添加临时字段 >>output.sql
echo alter table %_tb% add(%_tmp% %_type%); >>output.sql
echo //>>output.sql

echo // 移走数据 >>output.sql
echo update %_tb% set %_tmp%=%_old% >>output.sql
echo commit;>>output.sql
echo //>>output.sql

echo //  删除原字段 >>output.sql
echo alter table %_tb% drop (%_old%) >>output.sql
echo //>>output.sql

echo // 添加新字段 >>output.sql
echo alter table %_tb% add(%_new% %_type%); >>output.sql
echo //>>output.sql

echo // 移回数据 >>output.sql
echo update %_tb% set %_new%=%_tmp% >>output.sql
echo commit;>>output.sql
echo //>>output.sql

echo // 删除临时字段 >>output.sql
echo alter table %_tb% drop (%_tmp%) >>output.sql
echo }>>output.sql

echo 完成,结果已输出到ouput.sql中,请检查!
pause
goto end

:error
echo 用法 数据表名 原字段名 新字段名 字段类型及大小
echo 如 %0 tbUser fdPwd fdPwd varchar2(40)

:end
set _tb=
set _fd=
set _type=
set _tmp=



----
不想计较得失,却总在计较得失     

[关闭][返回]