摘要:本节介绍各种SQL语句。本节介绍有关级的SQL以及相关操作,查看、建立和删除等操作。 从本节开始正式介绍各种SQL语句。本节介绍有关数据库级的SQL以及相关操作,查看、建立和删除等操作。 用SHOW显示已有的数据库 句法:SHOW DATABASES [LIKE wild] 如果使用LIKE wild部分,wild字符串可以是一个使用SQL的“%”和“_”通配符的字符串。 功能:SHOW DATABASES列出在MySQL服务器主机上的数据库。 你可以尝试下面举例,观察输出结果,例如: >show databases; +----------+ | Database | +----------+ | first | | mysql | | mytest | | test | | test1 | +----------+ mysql>show databases like ‘my%’; +----------------+ | Database (my%) | +----------------+ | mysql | | mytest | +----------------+ 用mysqlshow程序也可以得到已有数据库列表。 用Create Dabase 创建数据库 句法:CREATE DATABASE db_name 功能:CREATE DATABASE用给定的名字创建一个数据库。 如果数据库已经存在,发生一个错误。 在MySQL中的数据库实现成包含对应数据库中表的文件的目录。因为数据库在初始创建时没有任何表,CREATE DATABASE语句只是在MySQL数据目录下面创建一个目录。 例如: mysql>create database myfirst; 然后利用show databases观察效果。 用DROP DATABASE删除数据库 句法:DROP DATABASE [IF EXISTS] db_name 功能:DROP DATABASE删除数据库中的所有表和数据库。要小心地使用这个命令! DROP DATABASE返回从数据库目录被删除的文件的数目。通常,这3倍于表的数量,因为每张表对应于一个“.MYD”文件、一个“.MYI”文件和一个“.frm”文件。 在MySQL 3.22或以后版本中,你可以使用关键词IF EXISTS阻止一个错误的发生,如果数据库不存在。 使用mysqladmin工具创建和删除 在命令行环境下可以使用mysqladmin创建和删除数据库。 创建数据库: shell> mysqladmin create db_name 删除数据库: shell> mysqladmin drop db_name 如果出现下面的错误: mysqladmin: connect to server at localhost failed 直接在数据库目录中创建或删除 用上述方法创建数据库,只是MySQL数据目录下面创建一个与数据库同名目录,同样删除数据库是把这个目录删除。 所以,你可以直接这么做,创建或删除数据库,或者给数据库更名。这对备份和恢复备份有一定意义。 用USE选用数据库 句法:USE db_name USE db_name语句告诉MySQL使用db_name数据库作为随后的查询的缺省数据库。数据库保持到会话结束,或发出另外一个USE语句: mysql> USE db1; mysql> SELECT count(*) FROM db1.mytable; 总结 本节介绍了有关数据库操作的SQL语句、实用程序,其中包括: SQL语句:CREATE/DROP DATABASE,SHOW DATABASES,USE 程序mysqladmin 直接创建或删除数据库的目录
error: Access denied for user: (Using password: YES)
表示你需要一个可以正常连接的用户,请指定-u -p选项,具体方法与3.2节介绍相同,在第七章中你将会学到用户授权的知识。
mysql> SELECT count(*) FROM mytable; # selects from db1.mytable
mysql> USE db2;
mysql> SELECT count(*) FROM mytable; # selects from db2.mytable
如果你不是用USE语句,那么上面的例子应该写成:
mysql> SELECT count(*) FROM db2.mytable;
由于use也是一个mysql客户程序的命令,所以你可以在命令行最后不加分号,客户程序可以得到结果。