Mysql sql 命令总结

来源:互联网 发布:淘宝上有套现的商店吗 编辑:程序博客网 时间:2024/06/05 02:23
1、使用SHOW语句找出在服务器上当前存在什么数据库:


mysql> SHOW DATABASES; 
+----------+ 
| Database | 
+----------+ 
| mysql | 
| test | 
+----------+ 
3 rows in set (0.00 sec) 




2、创建一个数据库abccs 
mysql> CREATE DATABASE abccs; 
注意不同操作系统对大小写的敏感。 
3、选择你所创建的数据库 
mysql> USE abccs 
Database changed 
此时你已经进入你刚才所建立的数据库abccs. 
4、 创建一个数据库表 
首先看现在你的数据库中存在什么表: 
mysql> SHOW TABLES; 
Empty set (0.00 sec) 
说明刚才建立的数据库中还没有数据库表。下面来创建一个数据库表mytable:   我们要建立一个你公司员工的生日表,表的内容包含员工姓名、性别、出生日期、出生城市。


mysql> CREATE TABLE mytable (name VARCHAR(20), sex CHAR(1), 
-> birth DATE, birthaddr VARCHAR(20)); 
Query OK, 0 rows affected (0.00 sec) 




由于name、birthadd的列值是变化的,因此选择VARCHAR,其长度不一定是20。可以选择从1到255的任何长度,如果以后需要改变它的字长,可以使用ALTER TABLE语句。);性别只需一个字符就可以表示:"m"或"f",因此选用CHAR(1);birth列则使用DATE数据类型。 
创建了一个表后,我们可以看看刚才做的结果,用SHOW TABLES显示数据库中有哪些表:


mysql> SHOW TABLES; 
+---------------------+ 
| Tables in menagerie | 
+---------------------+ 
| mytables | 
+---------------------+ 




5、显示表的结构:


mysql> DESCRIBE mytable; 
+-------------+-------------+------+-----+---------+-------+ 
| Field | Type | Null | Key | Default | Extra | 
+-------------+-------------+------+-----+---------+-------+ 
| name | varchar(20) | YES | | NULL | | 
| sex | char(1) | YES | | NULL | | 
| birth | date | YES | | NULL | | 
| deathaddr | varchar(20) | YES | | NULL | | 
+-------------+-------------+------+-----+---------+-------+ 
4 rows in set (0.00 sec) 




6、 往表中加入记录 
我们先用SELECT命令来查看表中的数据: 
mysql> select * from mytable; 
Empty set (0.00 sec)
这说明刚才创建的表还没有记录。 加入一条新记录:


mysql> insert into mytable 
-> values (′abccs′,′f′,′1977-07-07′,′china′); 
Query OK, 1 row affected (0.05 sec) 




再用上面的SELECT命令看看发生了什么变化。我们可以按此方法一条一条地将所有员工的记录加入到表中。 
7、用文本方式将数据装入一个数据库表  
如果一条一条地输入,很麻烦。我们可以用文本文件的方式将所有记录加入你的数据库表中。创建一个文本文件“mysql.txt”,每行包含一个记录,用定位符(tab)把值分开,并且以在CREATE TABLE语句中列出的列次序给出,例如:


abccs f 1977-07-07 china   
mary f 1978-12-12 usa 
tom m 1970-09-02 usa 




使用下面命令将文本文件“mytable.txt”装载到mytable表中:mysql> LOAD DATA LOCAL INFILE "mytable.txt" INTO TABLE mytable; 

再使用如下命令看看是否已将数据输入到数据库表中:mysql> select * from mytable;


备注:

如果需要从文件导入数据到数据库,可以用Load data local infile 语句。

默认的情况是这样的:

制表符tab为字段分隔符,换行符为记录分隔符。

这种情况不需要任何附加条件说明,直接用最简明的语句就可以:

load data local infile 'F:/pet.txt' into table pet;

有的情况是这样的:


逗号','为字段分隔符,换行符为记录分隔符。

这种情况,只有记录的分隔符是默认的,就要附加字段分隔条件:

load data local infile 'F:/pet1.txt' into table pet fields terminated by ',';

还有种情况是这样的:


逗号','为字段分隔符,'*,'为记录分隔符。

这种情况,无论字段还是记录的分隔符都不是默认的,就要分别加以说明:

load data local infile 'F:/pet2.txt' into table pet fields terminated by ',' lines terminated by '*,';






本篇文章来源于 Linux公社网站(www.linuxidc.com)  原文链接:http://www.linuxidc.com/Linux/2012-02/54766.htm