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