您的位置:首页 > 数据库 > MySQL

学习日志————MySQL练习

2016-06-04 16:46 393 查看
create user;

语法:

      1> INSERT yourTableName VALUES(columnValue);

            

实例1:
mysql> use user;
Database changed

mysql> create table user(

    id int not null auto_increment primary key,

    name varchar(20) not null,

    password varchar(20) not null

    )DEFAULT CHARSET=utf8;

mysql> insert into user values(1,'zhangsan','1234');
Query OK, 1 row affected (0.09 sec)

mysql> select * from user;
+----+----------+----------+
| id | name     | password |
+----+----------+----------+
|  1 | zhangsan | 1234     |
+----+----------+----------+
1 row in set (0.00 sec)

      2> INSERT INTO yourTableName [(column [, column...])]   VALUES (value [, value...]);  

             

实例2:
mysql> insert into user (name,password) values('lisi','123456');
Query OK, 1 row affected (0.08 sec)

mysql> select * from user;
+----+----------+----------+
| id | name     | password |
+----+----------+----------+
|  1 | zhangsan | 1234     |
|  2 | lisi     | 123456   |
+----+----------+----------+
2 rows in set (0.00 sec)

mysql> insert into user (name,password) values('wangwu','1111'),('zhaoliu','2222');
Query OK, 2 rows affected (0.09 sec)
Records: 2  Duplicates: 0  Warnings: 0

mysql> select * from user;
+----+----------+----------+
| id | name     | password |
+----+----------+----------+
|  1 | zhangsan | 1234     |
|  2 | lisi     | 123456   |
|  3 | wangwu   | 1111     |
|  4 | zhaoliu  | 2222     |
+----+----------+----------+
4 rows in set (0.00 sec)

4. select: 查寻数据 Query database, get data from database

      1> SELECT * FROM yourTableName;

      例子:mysql> select * from user;
+----+----------+----------+
| id | name     | password |
+----+----------+----------+
|  1 | zhangsan | 1234     |
|  2 | lisi     | 123456   |
|  3 | wangwu   | 1111     |
|  4 | zhaoliu  | 2222     |
+----+----------+----------+
4 rows in set (0.00 sec)

      2> SELECT * FROM yourTableName WHERE condition;
例子:mysql> select * from user where id=2;
+----+------+----------+
| id | name | password |
+----+------+----------+
|  2 | lisi | 123456   |
+----+------+----------+
1 row in set (0.06 sec)

      3> SELECT columnName [as][别名]  FROM yourTableName [as][别名] WHERE [表名.列名]condition;

      例子:mysql> select name from user where id =3;
+--------+
| name   |
+--------+
| wangwu |
+--------+
1 row in set (0.00 sec)

mysql> select name as '姓名' from user u where u.id = 3;
+--------+
| 姓名   |
+--------+
| wangwu |
+--------+
1 row in set (0.00 sec)

      4> SELECT columnName1[as][别名1],  columnName2 [as][别名2]FROM yourTableName WHERE [表名.列名]condition;

    例子:mysql> select name,password from user where name='wangwu';
+--------+----------+
| name   | password |
+--------+----------+
| wangwu | 1111     |
+--------+----------+
1 row in set (0.00 sec)

mysql> select name as '姓名',password '密码' from user as u where u.id=4;
+---------+------+
| 姓名    | 密码 |
+---------+------+
| zhaoliu | 2222 |
+---------+------+
1 row in set (0.00 sec)

5. update: 修改数据 Modifies existing rows in the table.

     1> UPDATE yourTableName SET columnName1=columnValue1, columnName2=columnValue2 ;  // update all rows
例子:mysql> update user set password='111111';
Query OK, 4 rows affected (0.11 sec)
Rows matched: 4  Changed: 4  Warnings: 0

mysql> select * from user;
+----+----------+----------+
| id | name     | password |
+----+----------+----------+
|  1 | zhangsan | 111111   |
|  2 | lisi     | 111111   |
|  3 | wangwu   | 111111   |
|  4 | zhaoliu  | 111111   |
+----+----------+----------+
4 rows in set (0.00 sec)

     2> UPDATE yourTableName SET columnName=columnValue WHERE condition; 

        例子:mysql> update user set password='1234' where id=2;
Query OK, 1 row affected (0.08 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select * from user;
+----+----------+----------+
| id | name     | password |
+----+----------+----------+
|  1 | zhangsan | 111111   |
|  2 | lisi     | 1234     |
|  3 | wangwu   | 111111   |
|  4 | zhaoliu  | 111111   |
+----+----------+----------+
4 rows in set (0.00 sec)

6. delete: 删除数据 Removes existing rows from the table.  

      1> DELETE FROM yourTableName;                                  //delete all rows

      2> DELETE FROM yourTableName WHERE condition;

      3> DELETE FROM yourTableName WHERE condition1 AND(OR) condition2;

         例子:mysql> delete from user where id=1;
Query OK, 1 row affected (0.06 sec)

mysql> select * from user;
+----+---------+----------+
| id | name    | password |
+----+---------+----------+
|  2 | lisi    | 1234     |
|  3 | wangwu  | 111111   |
|  4 | zhaoliu | 111111   |
+----+---------+----------+
3 rows in set (0.00 sec)

7. alter table: 改变表结构 Add and modify columns, Add or remove constraints, Enable or disable constraints

      1> ALTER TABLE yourTableName ADD columnName  columnType columnConstraint;
例子:mysql> alter table user add sex char(1) not null;
Query OK, 3 rows affected (0.36 sec)
Records: 3  Duplicates: 0  Warnings: 0

mysql> desc user;
+----------+-------------+------+-----+---------+----------------+
| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+
| id       | int(11)     | NO   | PRI | NULL    | auto_increment |
| name     | varchar(20) | NO   |     |         |                |
| password | varchar(20) | NO   |     |         |                |
| sex      | char(1)     | NO   |     |         |                |
+----------+-------------+------+-----+---------+----------------+
4 rows in set (0.03 sec)

      2> ALTER TABLE yourTableName MODIFY columnName  newColumnType newcolumnConstraint;
例子:mysql> alter table user modify sex varchar(2);
Query OK, 3 rows affected (0.28 sec)
Records: 3  Duplicates: 0  Warnings: 0

mysql> desc user;
+----------+-------------+------+-----+---------+----------------+
| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+
| id       | int(11)     | NO   | PRI | NULL    | auto_increment |
| name     | varchar(20) | NO   |     |         |                |
| password | varchar(20) | NO   |     |         |                |
| sex      | varchar(2)  | YES  |     | NULL    |                |
+----------+-------------+------+-----+---------+----------------+
4 rows in set (0.02 sec)

      3> ALTER TABLE yourTableName CHANGE oldcolumnName  newColumnName newColumnType newcolumnConstraint;   
例子:mysql> alter table user change sex xingbie char(1) not null;
Query OK, 3 rows affected (0.25 sec)
Records: 3  Duplicates: 0  Warnings: 0

mysql> desc user;
+----------+-------------+------+-----+---------+----------------+
| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+
| id       | int(11)     | NO   | PRI | NULL    | auto_increment |
| name     | varchar(20) | NO   |     |         |                |
| password | varchar(20) | NO   |     |         |                |
| xingbie  | char(1)     | NO   |     |         |                |
+----------+-------------+------+-----+---------+----------------+
4 rows in set (0.02 sec)

      4> ALTER TABLE yourTableName ADD [CONSTRAINT constraint] type (column);
例子:mysql> alter table user add constraint  unique(name);
Query OK, 3 rows affected (0.25 sec)
Records: 3  Duplicates: 0  Warnings: 0

mysql> desc user;
+----------+-------------+------+-----+---------+----------------+
| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+
| id       | int(11)     | NO   | PRI | NULL    | auto_increment |
| name     | varchar(20) | NO   | UNI |         |                |
| password | varchar(20) | NO   |     |         |                |
| xingbie  | char(1)     | NO   |     |         |                |
+----------+-------------+------+-----+---------+----------------+
4 rows in set (0.01 sec)

      5> ALTER TABLE yourTableName DROP columnName; 

         例子:mysql> alter table user drop xingbie;
Query OK, 3 rows affected (0.33 sec)
Records: 3  Duplicates: 0  Warnings: 0

mysql> desc user;
+----------+-------------+------+-----+---------+----------------+
| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+
| id       | int(11)     | NO   | PRI | NULL    | auto_increment |
| name     | varchar(20) | NO   | UNI |         |                |
| password | varchar(20) | NO   |     |         |                |
+----------+-------------+------+-----+---------+----------------+
3 rows in set (0.01 sec)

    
例子: ALTER TABLE passenger ADD CONSTRAINT passenger_flight_fk  FOREIGN KEY (flight_id)  REFERENCES flight(id);          
//!!!!!!!!!!!!!!!!!!Foreign key
例子:

         Example1: ALTER TABLE orders ADD CONSTRAINT orders_customer_fk  FOREIGN KEY (customer_id)  REFERENCES customer(id);   

         Example2: ALTER TABLE orders ADD  FOREIGN KEY (customer_id)  REFERENCES customer(id);          

     

8. drop table: 删除表数据及表结构  removes all rows and table structure

     DROP TABLE  yourTableName;

9. truncate table: 删除表的所有数据  removes all rows  

    ** 与DELETE FROM yourTableName不同的是,把整个表及数据删掉,然后再新建一个表

     TRUNCATE TABLE  yourTableName;

DELETE语句执行删除的过程是每次从表中删除一行,并且同时将该行的的删除操作作为事务记录在日志中保存以便进行进行回滚操作。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: