一、操作技巧
1、如果你打命令时,回车后发现忘记加分号,你无须重打一遍命令,只要打个分号回车就可以了。也就是说你可以把一个完整的命令分成几行来打,完后用分号作结束标志就OK。 2、你可以使用光标上下键调出以前的命令。但MYSQL旧版本不支持。mysql4.0以上的都支持。
二、操作命令 1、显示数据库列表。 格式:show databases; mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | itblogren | | mysql | | test | +--------------------+ 4 rows in set (0.00 sec) mysql 库很重要它里面有 MySQL 的系统信息,改密码和新增用户,实际上就是对这个库进行操作。
2、显示库中的数据表: 格式:use mysql;show tables; mysql> use mysql; Database changed mysql> show tables; +---------------------------+ | Tables_in_mysql | +---------------------------+ | columns_priv | | db | | func | | help_category | | help_keyword | | help_relation | | help_topic | | host | | proc | | procs_priv | | tables_priv | | time_zone | | time_zone_leap_second | | time_zone_name | | time_zone_transition | | time_zone_transition_type | | user | +---------------------------+ 17 rows in set (0.00 sec)
3、显示数据表的结构: 格式:describe/desc 表名; mysql> desc time_zone_name; +--------------+------------------+------+-----+---------+------+ | Field | Type | Null | Key | Default | Extra| +--------------+------------------+------+-----+---------+------+ | Name | char(64) | NO | PRI | | | | Time_zone_id | int(10) unsigned | NO | | | | +--------------+------------------+------+-----+---------+------+ 2 rows in set (0.01 sec)
4、建库: 格式:create database 库名; mysql> create database testdb; Query OK, 1 row affected (0.09 sec)
5、建表: 格式:use 库名;create table 表名 (字段设定列表); mysql> use testdb; Database changed mysql> create table user -> ( -> userid int not null, -> username varchar(20) not null, -> password varchar(50) not null, -> email varchar(50), -> primary key (userid) -> ); Query OK, 0 rows affected (0.25 sec)
6、删库和删表: 格式:drop database 库名; drop table 表名; mysql> drop database testdb; Query OK, 1 row affected (0.09 sec) mysql> drop table user; Query OK, 0 rows affected (0.06 sec)
7、删除表中记录清空: 格式:delete from 表名 where 条件; 8、查询表中的记录: 格式:select * from 表名 where 条件;
三、新建库表实例 任务:在数据库testdb中新建一张user表,在其中插入几条记录,然后查询user表。 建库建表: mysql> drop database if exists testdb;/*如果存在testdb则删除*/ Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> create database testdb; /*建立库testdb*/ Query OK, 1 row affected (0.00 sec) mysql> use testdb; Database changed mysql> create table user /*建表user*/ -> ( -> userid int not null, -> username varchar(20) not null, -> password varchar(50) not null, -> email varchar(50), -> primary key (userid) > ); Query OK, 0 rows affected (0.07 sec) 插入字段: mysql> /*插入字段*/ mysql> insert into user s('1','aa','123456','abc@sina.com'); Query OK, 1 row affected (0.07 sec) mysql> insert into user s('2','bb','123456','def@sohu.com'); Query OK, 1 row affected (0.06 sec) 在 MySQL 提示符键入上面的命令也可以,但不方便调试。也可以将以上命令原样写入一个文本文件中假设为 user.sql,然后复制到 c:\ 下,并在 DOS 状态进入目录 %mysqlpath%\mysql\bin> ,然后键入以下命令: 格式:mysql -uroot -p密码 < c:\user.sql 如果成功,空出一行无任何显示;如有错误,会有提示。
四、将文本数据转到数据库中 1、文本数据应符合的格式:字段数据之间用 tab 键隔开,null 值用 \n 来代替. 例: c:\data.txt 中的数据为 3 cc abcdef 4 dd abcdef 5 ee aaaaaa 6 ff aaaaaa
2、数据传入命令 load data local infile "文件名" into table 表名; mysql> load data local infile "c:\\data.txt" into table user; Query OK, 6 rows affected (0.02 sec) Records: 6 Deleted: 0 Skipped: 0 Warnings: 0
注意:文件的路径要用双斜杠格开。 mysql> select * from user; +--------+----------+----------+---------------+ | userid | username | password | email | +--------+----------+----------+---------------+ | 1 | aa | 123456 | | 2 | bb | 123456 | | 3 | cc | abcdef | | 4 | dd | abcdef | | 5 | ee | aaaaaa | | 6 | ff | aaaaaa | +--------+----------+----------+---------------+ 6 rows in set (0.01 sec) 更新字段: 格式:update 表名 set 列名1=值,列名2=值,... where 条件; mysql> update user set username="modify" where userid ="6"; Query OK, 1 row affected (0.03 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> select * from user; +--------+----------+----------+---------------+ | userid | username | password | email | +--------+----------+----------+---------------+ | 1 | aa | 123456 | | 2 | bb | 123456 | | 3 | cc | abcdef | | 4 | dd | abcdef | | 5 | ee | aaaaaa | | 6 | modify | aaaaaa | +--------+----------+----------+---------------+ 6 rows in set (0.00 sec) 删除记录: 格式:delete from 表 where 条件; mysql> delete from user; Query OK, 6 rows affected (0.04 sec) mysql> select * from user; Empty set (0.00 sec) 这一篇我们讲了数据库的创建,表的创建,表的查询,修改,删除等操作,下一篇是关于数据库的备份。
| | |