库、表曾删改查和存储引擎

一、数据库的增删改查

增:create database xiaoyu;

mysql> create database xiaoyu;
Query OK, 1 row affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| wordpress          |
| xiaoyu             |
+--------------------+
6 rows in set (0.00 sec)

删:drop database xiaoyu;

mysql> drop database xiaoyu;
Query OK, 0 rows affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| wordpress          |
+--------------------+
5 rows in set (0.00 sec)

mysql> 

改:alter database xiaoyu charset utf8;

mysql> alter database xiaoyu charset utf8;
Query OK, 1 row affected (0.00 sec)

mysql> 

查:show create database xiaoyu;

mysql> show create database xiaoyu;
+----------+-----------------------------------------------------------------+
| Database | Create Database                                                 |
+----------+-----------------------------------------------------------------+
| xiaoyu   | CREATE DATABASE `xiaoyu` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+-----------------------------------------------------------------+
1 row in set (0.04 sec)

mysql> 

查所有的数据库:show databases;

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| wordpress          |
| xiaoyu             |
+--------------------+
6 rows in set (0.00 sec)
查所有数据库

二、表的增删改查

曾:create table member(id int,name char);

删:drop table member;

改:insert into member(id,name) values(1,'y');

不写给谁传值就指定都传,而且还是按照位置传

查:show tables; #查看所有表

   show create table t1;#查看指定的表
   select * from t1 #查看表数据
   select id,name from t1  #查看表数据
engine = InnoDB
表的存储引擎是InnoDB
mysql> show tables;
+------------------+
| Tables_in_xiaoyu |
+------------------+
| member |
+------------------+
1 row in set (0.00 sec)

mysql> show table();
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '()' at line 1
mysql> show create table member\G
*************************** 1. row ***************************
Table: member
Create Table: CREATE TABLE `member` (
`id` int(11) DEFAULT NULL,
`name` char(1) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)

mysql> select * from member;
+------+------+
| id | name |
+------+------+
| 1 | y |
+------+------+
1 row in set (0.00 sec)

mysql> select * from member;
+------+------+
| id | name |
+------+------+
| 1 | y |
+------+------+
1 row in set (0.00 sec)

mysql> select id,mane from member;
ERROR 1054 (42S22): Unknown column 'mane' in 'field list'
mysql> select id,name from member;
+------+------+
| id | name |
+------+------+
| 1 | y |
+------+------+
1 row in set (0.00 sec)

关于存储引擎:

一种类型表明的是一种存储方式
存储引擎:就是表的类型,不同的类型就会对应不同的处理机制去处理他
事务:就是要么同时成功,要么同时不成功

使用存储引擎

方法1:建表时指定

存储引擎
create table t1(id int) engine = innodb 会出现2个文件
create table t2(id int) engine = myisam 会出现3个文件(速度比上面的快),但是我们还是用innodb存储 
create table t3(id int) engine = memory 只有表结构没有表数据,是创建到内存中的
create table t4(id int) engine = blackhole  黑洞,吃数据(数据存进去就没有了,存进去就没有了)

方法2:在配置文件中指定默认的存储引擎

/etc/my.cnf
[mysqld]
default-storage-engine=INNODB
innodb_file_per_table=1

 

posted @ 2018-05-12 21:22  随心朝阳  阅读(247)  评论(0编辑  收藏  举报