当前位置: 代码迷 >> SQL >> sql 平添 删除 判断字段是否存在
  详细解决方案

sql 平添 删除 判断字段是否存在

热度:402   发布时间:2016-05-05 14:50:12.0
sql 添加 删除 判断字段是否存在

  1. 增加字段 ??
  2. alter?table?docdsp?add?dspcode?char(200) ??
  3. 删除字段 ??
  4. ALTER?TABLE?table_NAME?DROP?COLUMN?column_NAME ??
  5. 修改字段类型 ??
  6. ALTER?TABLE?table_name?ALTER?COLUMN?column_name new_data_type ??
  7. 改名 ??
  8. sp_rename ??
  9. 更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。 ??
  10. 语法 ??
  11. sp_rename [ @objname = ]?'object_name'?, ??
  12. ???? [ @newname = ]?'new_name'??
  13. ???? [ , [ @objtype = ]?'object_type'?] ??
  14. ??
  15. ??
  16. --假设要处理的表名为: tb???
  17. ??
  18. --判断要添加列的表中是否有主键???
  19. if exists(select?1?from?sysobjects?where?parent_obj=object_id('tb')?and?xtype='PK') ??
  20. begin??
  21. print?'表中已经有主键,列只能做为普通列添加'??
  22. ??
  23. --添加int类型的列,默认值为0???
  24. alter?table?tb?add?列名?int?default?0 ??
  25. end??
  26. else??
  27. begin??
  28. print?'表中无主键,添加主键列'??
  29. ??
  30. --添加int类型的列,默认值为0???
  31. alter?table?tb?add?列名?int?primary?key?default?0 ??
  32. end??
  33. /**************************************************************************************/ ??
  34. ??
  35. 判断table1中是否存在name字段 ??
  36. if exists(select?*?from?syscolumns?where?id=object_id('table1')?and?name='name')?begin??
  37. select?*?from?people; ??
  38. end??
  39. 判断table1中是否存在name字段且删除字段
  40. if exists(select?*?from?syscolumns?where?id=object_id('table1')?and?name='name')?begin??
  41. select?*?from?people;??
  42. alter?table?table1?DROP?COLUMN?name
  43. end

  相关解决方案