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语句可以换行,遇到 ; 时认为语句结束