寻一SQL语句!

JackileXM 2003-09-30 10:07:06
1 如何知道数据库中是否存在某个表!
2 如果存在则删除之,再创建一个,我是在查询分析器里操作,希望能给予答复!
3 如何列出数据库中所有表!
...全文
37 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
sonique 2003-10-01
  • 打赏
  • 举报
回复
zt

-- ======================================================

--列出SQL SERVER 所有表,字段名,主键,类型,长度,小数位数等信息

--在查询分析器里运行即可,可以生成一个表,导出到EXCEL中

-- ======================================================

SELECT

(case when a.colorder=1 then d.name else '' end)表名,

a.colorder 字段序号,

a.name 字段名,

(case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end) 标识,

(case when (SELECT count(*)

FROM sysobjects

WHERE (name in

(SELECT name

FROM sysindexes

WHERE (id = a.id) AND (indid in

(SELECT indid

FROM sysindexkeys

WHERE (id = a.id) AND (colid in

(SELECT colid

FROM syscolumns

WHERE (id = a.id) AND (name = a.name))))))) AND

(xtype = 'PK'))>0 then '√' else '' end) 主键,

b.name 类型,

a.length 占用字节数,

COLUMNPROPERTY(a.id,a.name,'PRECISION') as 长度,

isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0) as 小数位数,

(case when a.isnullable=1 then '√'else '' end) 允许空,

isnull(e.text,'') 默认值,

isnull(g.[value],'') AS 字段说明



FROM syscolumns a left join systypes b

on a.xtype=b.xusertype

inner join sysobjects d

on a.id=d.id and d.xtype='U' and d.name<>'dtproperties'

left join syscomments e

on a.cdefault=e.id

left join sysproperties g

on a.id=g.id AND a.colid = g.smallid

order by a.id,a.colorder

-------------------------------------------------------------------------------------------------

zsy0925 2003-10-01
  • 打赏
  • 举报
回复
真是学东西的好地方啊!请以后多多发表,谢了。
Jackile 2003-09-30
  • 打赏
  • 举报
回复
都很好的代码啊!
cansum396 2003-09-30
  • 打赏
  • 举报
回复
1.
IF EXISTS(SELECT * FROM sysobjects WHERE XTYPE = 'U' AND NAME = 'CAL_ACCOUNT_ORDER')
BEGIN
DROP TABLE CAL_ACCOUNT_ORDER
END
2.

SELECT * FROM sysobjects WHERE XTYPE = 'U'


golden24kcn 2003-09-30
  • 打赏
  • 举报
回复
select * from systable where tablename=mytable

drop thistalbe

select * from systalbe

如果是sql server就写个procedure

CREATE PROCEDURE selectanddeltable @tablenames varchar(20) AS

declare @thistalbe varchar(20)
declare @ExeSQL varchar(50)

select @thistable=name from sysobject where name=@tablename

if @thistalbe!=''
begin
@exesql='drop ' + @thistalbe
execute @exesql
end

SELECT * FROM sysobjects WHERE xtype = 'U'
go

///你要用RecordSet来执行,不然不会返回表名
gzqg 2003-09-30
  • 打赏
  • 举报
回复
if exitst tablename then drop ...
好像是这么写、记不清了、自己生成一个表的脚本在查询分析器里打开一看就知道了
  • 打赏
  • 举报
回复
UP
golden24kcn 2003-09-30
  • 打赏
  • 举报
回复
select * from systable where tablename=mytable
unkowme 2003-09-30
  • 打赏
  • 举报
回复
在SQL数据库里,点右键,选生成SQL脚本,那里就有。
txlicenhe 2003-09-30
  • 打赏
  • 举报
回复
1.
IF EXISTS(SELECT * FROM sysobjects WHERE XTYPE = 'U' AND NAME = 'CAL_ACCOUNT_ORDER')
BEGIN
DROP TABLE CAL_ACCOUNT_ORDER
END
或者:
if object_id('cal_account_order') is not null
drop table cal_account_order
2.

SELECT * FROM sysobjects WHERE XTYPE = 'U'
第1章 简介 1.1 谁是本书的读者 1.2 本书的内容 1.3 需求 1.4 SQL Server 2000的新特性 1.4.1 改进了对Web的支持 1.4.2 改进了伸缩能力和可靠性 1.4.3 改进了开发和管理环境 1.5 样本数据库 1.5.1 样本数据库安装 1.5.2 样本数据库的设计目的和设计思想 1.5.3 数据库图解 1.6 小结 第2章 关系数据库概念和SQL Server环境 2.1 数据库 2.1.1 关系数据库 2.1.2 数据库对象 2.1.3 什么是存储过程 2.2 SQL Server 2000的工具 2.2.1 Service Manage 2.2.2 Query Analyze 2.2.3 Enterprise Manage 2.2.4 DTS--导入和导出数据 2.2.5 osql和isql 2.2.6 SQL Server Profile 2.2.7 客户端网络实用工具 2.2.8 帮助子系统和SQL Server Books Online 2.3 存储过程的基本操作 2.3.1 通过Query Analyzer执行存储过程 2.3.2 通过Enterprise Manager管理存储过程 2.3.3 在Enterprise Manager中编辑存储过程 2.3.4 在Query Analyzer中编辑存储过程 2.3.5 语法错误 2.3.6 Create Stored Procedure Wizar 2.4 小结 2.5 练习 第3章 存储过程设计概念 3.1 存储过程的结构 3.1.1 组成 3.1.2 功能 3.1.3 语法 3.2 存储过程的类型 3.3 编译 3.3.1 编译和执行过程 3.3.2 执行规划的重用 3.3.3 重编译存储过程 3.3.4 存储存储过程 3.4 管理存储过程 3.4.1 列举存储过程 3.4.2 查看存储过程 3.4.3 重命名存储过程 3.4.4 删除存储过程 3.4.5 查看相关和有依赖关系的对象 3.5 存储过程在数据库应用开发中的作用 3.5.1 增强数据完整性 3.5.2 复杂商业规则和约束的一致实现 3.5.3 模块化设计 3.5.4 可维护性 3.5.5 减少网络流量 3.5.6 更快的执行 3.5.7 增强了安全性 3.6 小结 3.7 练习 第4章 Transact-SQL编程基础 4.1 TSQL标识符 4.2 数据库对象限定词 4.3 数据类型 4.3.1 数据类型的分组 4.3.2 数据类型的同义词 4.3.3 用户定义的数据类型 4.4 变量 4.4.1 局部变量 4.4.2 全局变量 4.4.3 table(表)变量 4.5 流控制语句 4.5.1 注释 4.5.2 语句块-Begin...End 4.5.3 条件执行--If语句 4.5.4 循环--While语句 4.5.5 无条件执行--GoTo语句 4.5.6 调度执行--WaitFor语句 4.6 光标 4.6.1 Transact-SQL光标 4.6.2 与光标有关的语句和函数 4.6.3 使用光标带来的问题 4.6.4 合理使用光标 4.7 小结 4.8 练习 第5章 函数 5.1 使用函数 5.1.1 用于选择和赋值中 5.1.2 用于过滤规则中 5.1.3 用于表达式中 5.1.4 作为检查和默认的约束 5.1.5 替代表 5.2 函数的类型 5.2.1 标量函数 5.2.2 集合函数 5.2.3 行集合函数 5.3 小结 5.4 练习 第6章 复合Transact-SQL 结构--批处理、脚本和事务 6.1 批处理 6.1.1 使用批处理 6.1.2 批处理与出错 6.1.3 DDL批处理 6.2 脚本 6.2.1 数据库脚本编程 6.3 事务概念 6.3.1 自动提交的事务 6.3.2 显式事务 6.3.3 隐式事务 6.3.4 事务处理的结构 6.3.5 嵌套的事务 6.3.6 已命名的事务 6.3.7 保存点 6.3.8 锁定 6.3.9 事务隔离级别和提示 6.3.10 分布式事务 6.3.11 典型的出错 6.4 小结 6.5 练习 第7章 调试和出错处理 7.1 调试 7.1.1 什么是“bug” 7.1.2 调试过程 7.1.3 调试工具和技术 7.1.4 典型的出错 7.2 出错处理 7.2.1 使用出错处理 7.2.2 为何要自寻烦恼 7.2.3 出错处理的策略 7.2.4 一种通用的出错处理方法 7.2.5 XACT_ABOR 7.2.6 Raiserro 7.3 小结 7.4 练习 第8章 确定专业的编程风格 8.1 源代码控制的概念 8.1.1 Microsoft Visual SourceSafe简介 8.1.2 管理Visual SourceSafe数据库 8.1.3 往Visual SourceSafe中添加一个数据库 8.1.4 管理存储过程 8.1.5 Visual SourceSafe Explore 8.2 命名约定 8.2.1 为何要自寻烦恼 8.2.2 命名变量和对象 8.2.3 建议的命名约定 8.3 小结 第9章 特殊类型的过程 9.1 存储过程和类型 9.1.1 用户定义的存储过程 9.1.2 系统存储过程 9.1.3 扩展的存储过程 9.1.4 临时存储过程 9.1.5 全局临时存储过程 9.1.6 远程存储过程 9.2 用户定义的函数 9.2.1 用户定义函数的设计 9.2.2 表值用户定义函数 9.2.3 行内的表值用户定义函数 9.2.4 在Enterprise Manager中管理用户定义的函数 9.3 触发器 9.3.1 物理设计 9.3.2 多记录上的修改操作 9.3.3 嵌套触发器和递归触发器 9.3.4 触发器的限制 9.3.5 SQL Server 2000中的触发器 9.3.6 管理触发器 9.3.7 设计触发器的建议 9.3.8 触发器中的事务管理 9.3.9 使用触发器 9.4 小结 9.5 练习 第10章 高级存储过程编程技术 10.1 动态地构造查询 10.1.1 执行一个串 10.1.2 通过窗体查询 10.1.3 使用sp_executesql存储过程 10.2 使用时间戳的乐观锁 10.2.1 时间戳 10.2.2 TSEQUAL函数 10.2.3 时间戳转换 10.3 全文搜索和索引 10.4 嵌套的存储过程 10.4.1 使用临时表来传递一个记录集给一个嵌套的存储过程 10.4.2 使用光标来传递一个记录集给一个嵌套的存储过程 10.5 如何处理一个存储过程的结果集 10.6 使用标识值 10.6.1 一个标准问题及解答 10.6.2 标识值与触发器 10.6.3 序列号表 10.6.4 在一个临时表中保存标识值 10.7 GUI 10.8 使用MIN或MAX函数的While循环 10.9 属性管理 10.10 小结 10.11 练习 第11章 与SQL Server环境的交互 11.1 OLE Automation对象的执行 11.1.1 sp-OACreat 11.1.2 sp-OAMetho 11.1.3 sp-OASetPropert 11.1.4 sp_OAGetPropert 11.1.5 sp-OADestro 11.1.6 sp_OAGetErrorInf 11.1.7 数据类型转换 11.2 运行程序 11.3 运行Windows脚本文件 11.4 与NT Registry的交互 11.4.1 Registry子树 11.4.2 键和子键 11.5 Registry和SQL Server 11.5.1 xp_regrea 11.5.2 xp_regwrit 11.5.3 xp_regdeletevalu 11.6 作业 11.6.1 作业的管理 11.6.2 Job Scheduler的可选方法 11.6.3 用于维护作业的存储过程 11.6.4 操作员和报警 11.7 SQL Server和Web 11.7.1 Web Assistan 11.7.2 Web任务存储过程 11.7.3 sp_makewebtas 11.7.4 sp_runwebtas 11.7.5 sp_dropwebtas 11.7.6 Web页模板 11.8 串模板 11.8.1 xp_sprint 11.8.2 xp_sscan 11.9 邮件 11.9.1 用于E-Mail工作的扩展存储过程 11.9.2 xp_sendmai 11.9.3 xp_readmai 11.9.4 sp_processmai 11.10 数据库部署 11.10.1 在以前的环境中 11.10.2 在新版本的环境中 11.11 安全 11.11.1 安全结构 11.11.2 实现安全性 11.11.3 登录和用户名的同步 11.11.4 使用存储过程、用户定义函数和视图来管理应用程序安全 11.11.5 使用一个代理用户来管理应用程序安全 11.11.6 使用应用程序角色来管理应用程序安全 11.12 小结 11.13 练习 第12章 SQL Server 2000中的XML支持 12.1 XML的变迁 12.2 XML简介 12.2.1 标记语言简介 12.2.2 构造标记语言的块 12.2.3 XM 12.2.4 XML文档质量 12.2.5 XML解析器和DOM 12.2.6 XML中的链接和查询 12.2.7 转换XML 12.3 为何使用XML 12.3.1 用于单位之间的信息交换 12.3.2 信息发布 12.4 SQL Server中的XML支持 12.4.1 Transact-SQL语言扩展 12.4.2 OPENXM 12.4.3 使用XML发布数据库信息 12.5 小结 12.6 练习 附录A SQL Server 2000中的T-SQL和XML数据类型 附录B 练习答案
目录如下: 第1章 简介 1.1 谁是本书的读者 1.2 本书的内容 1.3 需求 1.4 SQL Server 2000的新特性 1.4.1 改进了对Web的支持 1.4.2 改进了伸缩能力和可靠性 1.4.3 改进了开发和管理环境 1.5 样本数据库 1.5.1 样本数据库安装 1.5.2 样本数据库的设计目的和设计思想 1.5.3 数据库图解 1.6 小结 第2章 关系数据库概念和SQL Server环境 2.1 数据库 2.1.1 关系数据库 2.1.2 数据库对象 2.1.3 什么是存储过程 2.2 SQL Server 2000的工具 2.2.1 Service Manage 2.2.2 Query Analyze 2.2.3 Enterprise Manage 2.2.4 DTS--导入和导出数据 2.2.5 osql和isql 2.2.6 SQL Server Profile 2.2.7 客户端网络实用工具 2.2.8 帮助子系统和SQL Server Books Online 2.3 存储过程的基本操作 2.3.1 通过Query Analyzer执行存储过程 2.3.2 通过Enterprise Manager管理存储过程 2.3.3 在Enterprise Manager中编辑存储过程 2.3.4 在Query Analyzer中编辑存储过程 2.3.5 语法错误 2.3.6 Create Stored Procedure Wizar 2.4 小结 2.5 练习 第3章 存储过程设计概念 3.1 存储过程的结构 3.1.1 组成 3.1.2 功能 3.1.3 语法 3.2 存储过程的类型 3.3 编译 3.3.1 编译和执行过程 3.3.2 执行规划的重用 3.3.3 重编译存储过程 3.3.4 存储存储过程 3.4 管理存储过程 3.4.1 列举存储过程 3.4.2 查看存储过程 3.4.3 重命名存储过程 3.4.4 删除存储过程 3.4.5 查看相关和有依赖关系的对象 3.5 存储过程在数据库应用开发中的作用 3.5.1 增强数据完整性 3.5.2 复杂商业规则和约束的一致实现 3.5.3 模块化设计 3.5.4 可维护性 3.5.5 减少网络流量 3.5.6 更快的执行 3.5.7 增强了安全性 3.6 小结 3.7 练习 第4章 Transact-SQL编程基础 4.1 TSQL标识符 4.2 数据库对象限定词 4.3 数据类型 4.3.1 数据类型的分组 4.3.2 数据类型的同义词 4.3.3 用户定义的数据类型 4.4 变量 4.4.1 局部变量 4.4.2 全局变量 4.4.3 table(表)变量 4.5 流控制语句 4.5.1 注释 4.5.2 语句块-Begin...End 4.5.3 条件执行--If语句 4.5.4 循环--While语句 4.5.5 无条件执行--GoTo语句 4.5.6 调度执行--WaitFor语句 4.6 光标 4.6.1 Transact-SQL光标 4.6.2 与光标有关的语句和函数 4.6.3 使用光标带来的问题 4.6.4 合理使用光标 4.7 小结 4.8 练习 第5章 函数 5.1 使用函数 5.1.1 用于选择和赋值中 5.1.2 用于过滤规则中 5.1.3 用于表达式中 5.1.4 作为检查和默认的约束 5.1.5 替代表 5.2 函数的类型 5.2.1 标量函数 5.2.2 集合函数 5.2.3 行集合函数 5.3 小结 5.4 练习 第6章 复合Transact-SQL 结构--批处理、脚本和事务 6.1 批处理 6.1.1 使用批处理 6.1.2 批处理与出错 6.1.3 DDL批处理 6.2 脚本 6.2.1 数据库脚本编程 6.3 事务概念 6.3.1 自动提交的事务 6.3.2 显式事务 6.3.3 隐式事务 6.3.4 事务处理的结构 6.3.5 嵌套的事务 6.3.6 已命名的事务 6.3.7 保存点 6.3.8 锁定 6.3.9 事务隔离级别和提示 6.3.10 分布式事务 6.3.11 典型的出错 6.4 小结 6.5 练习 第7章 调试和出错处理 7.1 调试 7.1.1 什么是“bug” 7.1.2 调试过程 7.1.3 调试工具和技术 7.1.4 典型的出错 7.2 出错处理 7.2.1 使用出错处理 7.2.2 为何要自寻烦恼 7.2.3 出错处理的策略 7.2.4 一种通用的出错处理方法 7.2.5 XACT_ABOR 7.2.6 Raiserro 7.3 小结 7.4 练习 第8章 确定专业的编程风格 8.1 源代码控制的概念 8.1.1 Microsoft Visual SourceSafe简介 8.1.2 管理Visual SourceSafe数据库 8.1.3 往Visual SourceSafe中添加一个数据库 8.1.4 管理存储过程 8.1.5 Visual SourceSafe Explore 8.2 命名约定 8.2.1 为何要自寻烦恼 8.2.2 命名变量和对象 8.2.3 建议的命名约定 8.3 小结 第9章 特殊类型的过程 9.1 存储过程和类型 9.1.1 用户定义的存储过程 9.1.2 系统存储过程 9.1.3 扩展的存储过程 9.1.4 临时存储过程 9.1.5 全局临时存储过程 9.1.6 远程存储过程 9.2 用户定义的函数 9.2.1 用户定义函数的设计 9.2.2 表值用户定义函数 9.2.3 行内的表值用户定义函数 9.2.4 在Enterprise Manager中管理用户定义的函数 9.3 触发器 9.3.1 物理设计 9.3.2 多记录上的修改操作 9.3.3 嵌套触发器和递归触发器 9.3.4 触发器的限制 9.3.5 SQL Server 2000中的触发器 9.3.6 管理触发器 9.3.7 设计触发器的建议 9.3.8 触发器中的事务管理 9.3.9 使用触发器 9.4 小结 9.5 练习 第10章 高级存储过程编程技术 10.1 动态地构造查询 10.1.1 执行一个串 10.1.2 通过窗体查询 10.1.3 使用sp_executesql存储过程 10.2 使用时间戳的乐观锁 10.2.1 时间戳 10.2.2 TSEQUAL函数 10.2.3 时间戳转换 10.3 全文搜索和索引 10.4 嵌套的存储过程 10.4.1 使用临时表来传递一个记录集给一个嵌套的存储过程 10.4.2 使用光标来传递一个记录集给一个嵌套的存储过程 10.5 如何处理一个存储过程的结果集 10.6 使用标识值 10.6.1 一个标准问题及解答 10.6.2 标识值与触发器 10.6.3 序列号表 10.6.4 在一个临时表中保存标识值 10.7 GUI 10.8 使用MIN或MAX函数的While循环 10.9 属性管理 10.10 小结 10.11 练习 第11章 与SQL Server环境的交互 11.1 OLE Automation对象的执行 11.1.1 sp-OACreat 11.1.2 sp-OAMetho 11.1.3 sp-OASetPropert 11.1.4 sp_OAGetPropert 11.1.5 sp-OADestro 11.1.6 sp_OAGetErrorInf 11.1.7 数据类型转换 11.2 运行程序 11.3 运行Windows脚本文件 11.4 与NT Registry的交互 11.4.1 Registry子树 11.4.2 键和子键 11.5 Registry和SQL Server 11.5.1 xp_regrea 11.5.2 xp_regwrit 11.5.3 xp_regdeletevalu 11.6 作业 11.6.1 作业的管理 11.6.2 Job Scheduler的可选方法 11.6.3 用于维护作业的存储过程 11.6.4 操作员和报警 11.7 SQL Server和Web 11.7.1 Web Assistan 11.7.2 Web任务存储过程 11.7.3 sp_makewebtas 11.7.4 sp_runwebtas 11.7.5 sp_dropwebtas 11.7.6 Web页模板 11.8 串模板 11.8.1 xp_sprint 11.8.2 xp_sscan 11.9 邮件 11.9.1 用于E-Mail工作的扩展存储过程 11.9.2 xp_sendmai 11.9.3 xp_readmai 11.9.4 sp_processmai 11.10 数据库部署 11.10.1 在以前的环境中 11.10.2 在新版本的环境中 11.11 安全 11.11.1 安全结构 11.11.2 实现安全性 11.11.3 登录和用户名的同步 11.11.4 使用存储过程、用户定义函数和视图来管理应用程序安全 11.11.5 使用一个代理用户来管理应用程序安全 11.11.6 使用应用程序角色来管理应用程序安全 11.12 小结 11.13 练习 第12章 SQL Server 2000中的XML支持 12.1 XML的变迁 12.2 XML简介 12.2.1 标记语言简介 12.2.2 构造标记语言的块 12.2.3 XM 12.2.4 XML文档质量 12.2.5 XML解析器和DOM 12.2.6 XML中的链接和查询 12.2.7 转换XML 12.3 为何使用XML 12.3.1 用于单位之间的信息交换 12.3.2 信息发布 12.4 SQL Server中的XML支持 12.4.1 Transact-SQL语言扩展 12.4.2 OPENXM 12.4.3 使用XML发布数据库信息 12.5 小结 12.6 练习 附录A SQL Server 2000中的T-SQL和XML数据类型 附录B 练习答案

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧