MySQL学习(一)

MySQL
当连上服务器后,我们首先面对的是?

选库语句
Use 库名;```

如果不知道有那些库,想查看所有的库怎么办?
```Show databases;```   注意 databases末尾有s

当选上库后,我们面对的是?
```表```

查看库下面所有的表?
```show tables;```

创建一个数据库?
```create database 数据库名 [charset 字符集];```

删除一个数据库?
```drop database 数据库名;``` 使用该命令要非常谨慎,在执行改命令时,MySQL不会给出任何提醒确认信息。

数据库改名?

mysql中,表/列可以改名,database不能改名
phpMyAdmin似乎有这功能? 他是新建库,把所有表复制到新库,再删除旧库完成的


创建一个表

CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)

实例

create table stu(
snum int,
sname varchar(10) #这里没有逗号!
)engine myisam charset utf8

engine是指表引擎,和性能特点相关

删除表:
```drop table 表名;```

给表改名: 
```rename table oldname to newname;```

向表中插入数据:
```INSERT INTO 表名称 VALUES (值1, 值2,....)```

清空表数据:
```truncate 表名```

truncate和delete是有区别的。
```truncate相当于删表再重建一张结构相同的表,操作后得到一张全新表
而delete是从删除所有的层面来操作的。
truvate相当于把旧的学籍表扔了重画一张,delete相当于用橡皮把学籍表的数据库擦掉。如果决定完全清空的情况下,trucate速度更快一些。```

解决乱码:```set names gdk;```
sql语句可以换行,遇到 ; 时认为语句结束
原文地址:https://www.cnblogs.com/Manual-Linux/p/10161127.html