如何撤消sql USE?

时间:2013-07-19 23:25:32

标签: mysql sql

要撤消的SQL命令是什么:

USE db;

我到处看到的语法是:

USE [db] ;

暗示我可以省略db部分。不是这样 - 但这是语法错误(可能只是SQL语法语法中的语法错误?)。

修改

这导致的编程问题是我无法重置后续命令运行的环境。我可以重置我的数据库连接,但这似乎很有效。

 cmdX;   // Works

VS

 cmdX;
 cmdY;   // May fail because command X upset some state.

cmdX应该自行清理并将东西放回原来的位置。

类似地:

cd ./a
   doX()
cd ../
doY()  // Y expects to not be in a?

2 个答案:

答案 0 :(得分:2)

我认为你不能。 documentation并未说参数是可选的。它说:

  

在会话结束或发出另一个USE语句之前,数据库仍然是默认值:

因此,如果要删除默认值,请结束会话并开始新会话而不选择数据库。

这会给您带来什么编程问题?

答案 1 :(得分:2)

数据库参数不是可选的。

mysql> use
ERROR: 
USE must be followed by a database name

我不确定你在哪里看到这个带有方括号的命令。这未在文档页面显示:http://dev.mysql.com/doc/refman/5.6/en/use.html

Microsoft SQL Server在标识符周围使用方括号(而不是用于指示可选参数的样式),但USE的MS SQL文档也未显示它:http://msdn.microsoft.com/en-us/library/ms188366.aspx

“撤消”USE命令意味着什么?它会像bash中的cd -一样,再次使先前的默认数据库成为默认数据库吗?在MySQL中没有这样的命令。它不记得你以前的默认数据库是什么。如果要返回,只需要USE该数据库并明确命名。