我正在尝试在Mysql服务器中执行查询
DELETE FROM MY_DB.MY_TABLE;
但是我收到错误"未选择数据库"。当我给出完整的名称(包括数据库)时,为什么要显式选择数据库?
假设您尝试从命令行执行查询,您可以尝试:
use MY_DB;
它将使用 MY_DB 作为默认数据库。下面是使用命令的文档。它说:
USE db_name语句告诉MySQL将db_name数据库用作 后续语句的默认(当前)数据库。数据库 在会话结束或其他 USE 之前保持默认值 发布声明。
更新
如果use
命令也失败,那么大概用户无权访问MY_DB
,在这种情况下,您可以使用MySQL的GRANT
语法授予访问权限(文档在这里)。如果要在查询本身中指定数据库,则不需要显式use
数据库。