首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 软件时空 > 软件相关 > 如何 修改表名及字段名包含['这类特殊字符
【标  题】:如何 修改表名及字段名包含['这类特殊字符
【关键字】:
【来  源】:http://www.cublog.cn/u/14014/showart.php?id=240174

如何 修改表名及字段名包含['这类特殊字符

execute  sp_rename  'www"qqq"rrr''tt[yy]]d.uu"dkf''d[ff]]pp','wang','column'  
delphi_network  
 
其中表名是:www"qqq"rrr'tt[yy]d  
       字段名是:uu"dkf'd[ff]pp  
       新字段名是:wang  
 
出现错误:标识符  'www"qqq"rrr'tt[yy]]d.uu"dkf'd[ff]]pp'  时发现语法错误。  
 
像这种表名和字段名都含有'  "  []符号的情况怎么更改字段名啊?  
请高手们赐教!  
---------------------------------------------------------------  
 
--规则:用[]把对象名标识出来,对象名中出现的],用两个]]表示  
 
EXECUTE  sp_rename  N'[www"qqq"rrr''tt[yy]]d].[uu"dkf''d[ff]]pp]',  N'wang',  'COLUMN'  
 
---------------------------------------------------------------  
 
--修改示例  
 
--创建对象  
CREATE  TABLE  [www"qqq"rrr'tt[yy]]d]  
           (  
           [uu"dkf'd[ff]]pp]  int  NULL  
           )  
go  
 
--显示名称是否正确  
select  表名=o.name,字段名=c.name    
from  sysobjects  o,syscolumns  c  
where  o.name='www"qqq"rrr''tt[yy]d'  
           and  o.id=c.id  
 
/*--测试结果  
 
表名                                    字段名                          
---------------------  -----------------  
www"qqq"rrr'tt[yy]d      uu"dkf'd[ff]pp  
 
(所影响的行数为  1  行)  
--*/  
go  
 
--修改字段名  
EXECUTE  sp_rename  N'[www"qqq"rrr''tt[yy]]d].[uu"dkf''d[ff]]pp]',  N'wang',  'COLUMN'  
GO  
 
--显示修改结果  
select  表名=o.name,字段名=c.name    
from  sysobjects  o,syscolumns  c  
where  o.name='www"qqq"rrr''tt[yy]d'  
           and  o.id=c.id  
 
/*--测试结果  
 
注意:  更改对象名的任一部分都可能破坏脚本和存储过程。  
COLUMN  已重命名为  'wang'。  
 
表名                                    字段名                          
---------------------  -----------------  
www"qqq"rrr'tt[yy]d      wang  
 
(所影响的行数为  1  行)  
--*/  
go  
 
--删除测试  
drop  table  [www"qqq"rrr'tt[yy]]d]  
 
---------------------------------------------------------------  
 
--你可以用这个函数来生成有效的对象名  
--注意字符串中的',一律用两个'表示  
 
select  quotename('www"qqq"rrr''tt[yy]d')  
           +'.'  
           +quotename('uu"dkf''d[ff]pp')  
 
--结果:  [www"qqq"rrr'tt[yy]]d].[uu"dkf'd[ff]]pp]  
--把这个用于  sp_rename  中就可以了(还是要注意字符串中的',一律用两个'表示)  
 
--或者,你可以直接用下面的语句来得到你的表名+字段名的字符串表示  
select  quotename(quotename('www"qqq"rrr''tt[yy]d')  
           +'.'  
           +quotename('uu"dkf''d[ff]pp'),'''')  
 
--结果:  '[www"qqq"rrr''tt[yy]]d].[uu"dkf''d[ff]]pp]'  
Acess中的数据类型:【上一篇】
ADO Command 命令的执行:【下一篇】
【相关文章】
没有相关文章
【随机文章】
  • 如何看懂路由表
  • 自动重启JBOSS服务器
  • Java 字符串转换三合一工具
  • ASP+中文显示之两种解决方法
  • 此安装不支持该项目类型-Community Server 2.1 for asp.net 2.0中文正式版
  • XML分页
  • 配置Tomcat5.5.4数据库连接池
  • linux下HA中sendarp配置示例
  • 一个hash_map使用错误
  • C语言程序设计(第2章 数据类型、运算符和表达式)--续
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.