学习mySQL主要就是想多一种数据库的选择,只要能用起来咱们再说别的。关系数据库说起来也用了一段时间了,说到这个又让我想起来一件事情。每当我问同事设计程序先从哪里入手。他们总是说先搞数据库设计再去编软件……。我记得Kent Back穿过一件T-shirt,上面写着:“你还在用数据库吗?”。我们当然不能一步就走到大师这样的一个水平。但是我们应到意识到数据库只是数据处理一种方法、一种途径。不是程序的主要,更不是全部。言归正传……
测试服务器是否正常
C:\mysql\bin\mysqlshow
C:\mysql\bin\mysqlshow -u root mysql
C:\mysql\bin\mysqladmin version status proc
C:\mysql\bin\mysql test
你也应该为root用户增加一个口令:
C:\mysql\bin\mysql mysql
mysql> DELETE FROM user WHERE Host='localhost' AND User='';
mysql> QUIT
C:\mysql\bin\mysqladmin reload
C:\mysql\bin\mysqladmin -u root password your_password
在你设置了口令以后,如果你想要关掉mysqld服务器, 你能使用这个命令做到:
mysqladmin -- user=root -- password=your_password shutdown
看看有多少数据库
mysqlshow -u root -p
mysql> SHOW DATABASES;
看看数据库里面有多少个表
mysqlshow [数据库名] -u kingfish -p
mysql> SHOW TABLES;
使用数据库
mysql>user [数据库名]
察看使用的数据库
mysql> SELECT DATABASE();
删除数据库
DROP DATABASE [IF EXISTS] db_name
自己使用的一个数据库
mysql> GRANT ALL ON [数据库名].* TO your_mysql_name;
察看表结构
DESCRIBE [表名];
导入数据
为了装载文本文件“pet.txt”到pet表中,使用这个命令:
mysql> LOAD DATA LOCAL INFILE "[文件名]" INTO TABLE [表名];
日期转换成年份
SELECT name, (TO_DAYS(NOW())-TO_DAYS(birth))/365 FROM pet;
如果非空
WHERE death IS NOT NULL
为了找出包含正好5个字符的名字,使用“_”模式字符: //这个还是比较有意思的
mysql> SELECT * FROM pet WHERE name LIKE "_____";
备份数据库
mysqldump --add-drop-table --opt test > backup-file.sql
改变表结构
ALTER TABLE t2 ADD PRIMARY KEY (name);