sql删除数据库所有表应该用哪个命令

sql删除数据库所有表应该用哪个命令,第1张

use 数据库名(是要删除表的所在的那个数据库的名称)\x0d\GO\x0d\declare @sql varchar(8000)\x0d\while (select count() from sysobjects where type='U')>0\x0d\begin\x0d\SELECT @sql='drop table ' + name\x0d\FROM sysobjects\x0d\WHERE (type = 'U')\x0d\ORDER BY 'drop table ' + name\x0d\exec(@sql) \x0d\end-----------------------------------------------use 数据库一定要填对哦

楼主不妨试试去Google一些 Sinatra Redis 的解决方案。 不过既然要用纯 Redis这方面我也没有经验, 那么就跟 ActiveRecord 没有什么直接关系了,还没有机会作一个用纯 Redis 而不用关系数据库的 Rails 应用,也许能找到一些可资借鉴的东西

1 mysqldump -d导出表结构

2 删除重建数据库

3 导入表结构

MYSQLDUMP 只导出表结构。然后DROP DATABASE,再CREATE DATABASE 并执行导出的脚本重新创建表。

这样子是最简单的做法~

查询数据库中所有表名

select table_name from information_schematables where table_schema='csdb' and table_type='base table';

查询指定数据库中指定表的所有字段名column_name

select column_name from information_schemacolumns where table_schema='csdb' and table_name='users'

清除mysql表中数据

delete from 表名;

truncate table 表名;

不带where参数的delete语句可以删除mysql表中所有内容,使用truncate table也可以清空mysql表中所有内容。

效率上truncate比delete快,但truncate删除后不记录mysql日志,不可以恢复数据。

delete的效果有点像将mysql表中所有记录一条一条删除到删完,

而truncate相当于保留mysql表的结构,重新创建了这个表,所有的状态都相当于新表。

先两句题外话: 我也喜欢用SQLite, 我也喜欢用scite编辑器写脚本代码, 但我没用ruby, 我在玩python

SQLite3里的语句是基本的SQL语句,它没有"xx类的方法"; 它的使用是:

create table tbname (fieldname fielddescript,) -- 建表

insert into tbname (fieldlist) values (valuelist) -- 添加记录

update tbname set field=newvalue, from tbname where conditions -- 修改记录

select fieldlist from tbname where conditions order by orderlist -- 查询记录

delete from tbname where conditions -- 删除记录

drop table tbname -- 删除表

大概看了看一点点样例,似乎在ruby中用sqlite的基本方法是先将sql命令拼成字符串再传给ruby的sqlite驱动接口类去执行。

先写一个sql文件,比如叫del_tablessql,在sql文件里写DROP TABLE的命令(DROP的内容根据你的需要,可以是单独的多个DROP TABLE指令,也可能是从USER_TABLES里查询出若干表名),然后bat文件里写

sqlplus 用户名/密码@库名 @del_tablessql

如果sql文件的内容需要帮助写,那请你给出你要删除的表名,或者表名的规律,比如TEMP为开头的所有表。

DELETE FROM 表名;只能删除数据表内的内容,不能删除表结构

DROP TABLE 表名;删除内容和定义,释放空间

TRUNCATE TABLE 表名;删除内容、释放空间但不删除定义。与drop不同的是,他只是清空表数据而已,不删除表结构。

truncate 比 delete速度快,且使用的系统和事务日志资源少。

truncate *** 作后的表比Delete *** 作后的表要快得多。

当表被清空后表和表的索引讲重新设置成初始大小,而delete则不能。

删除无任何数据对象的表空间:

首先使用PL/SQL界面化工具,或者使用oracle自带的SQL PLUS工具,连接需要删除的表空间的oracle数据局库。

确认当前用户是否有删除表空间的权限,如果没有 drop tablespace,请先用更高级的用户(如sys)给予授权或者直接用更高级的用户。

用drop tablespace xxx ,删除需要删除的表空间。

删除有任何数据对象的表空间

使用drop tablespace xxx including contents and datafiles;来删除表空间。

注意事项:

如果drop tablespace语句中含有datafiles,那datafiles之前必须有contents关键字,不然会提示ora-01911错误

以上就是关于sql删除数据库所有表应该用哪个命令全部的内容,包括:sql删除数据库所有表应该用哪个命令、如何删除ruby,换行新的版本 03 社区 03 Ruby China、mysql 中如何清空整个数据库的所有表中的内容而不删除表的结构等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10198842.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存