MySQL基本语句
一、用户创建、权限、删除
连接数据库
|
|
1.创建用户
|
|
2.授权
|
|
例:
3.删除用户
|
|
二、数据库与表显示、创建、删除
创建数据库
CREATE DATABASE 数据库名
显示所有数据库
SHOW DATABASES;
使用库(选中库)
USE 库名;
删除库
DROP DATABASE 库名;
创建数据表
CREATE 表明
显示数据库中的表
SHOW TABLES
显示表结构:describe 表名;或者desc 表名
describe teacher;
或desc teacher;
创建表:create table 表名 (字段设定列表);
|
|
- 删除表:DROP table 表名;
句法:DROP DATABASE [IF EXISTS] db_name
功能:DROP DATABASE删除数据库中的所有表和数据库。要小心地使用这个命令!
DROP DATABASE返回从数据库目录被删除的文件的数目。通常,这3倍于表的数量,因为每张表对应于一个“.MYD”文件、一个“.MYI”文件和一个“.frm”文件。
三、像表中插入数据
|
|
四、表复,制备份,还原
利用 teacher表实验
1.复制表
1.1 含有主键等信息的完整结构
|
|
1.2 只有表结构,没有主键等信息
|
|
1.3 将旧表中的数据灌入新表
|
|
注:新表必须已经存在
1.4 输入创建表的DDL 语句
|
|
1.5 清空表数据
|
|
五、数据库表中数据操作
1. 清除MySQL表中数据
|
|
不带where参数的delete语句可以删除mysql表中所有内容,使用truncate table也可以清空mysql表中所有内容。
效率上truncate比delete快,但truncate删除后不记录mysql日志,不可以恢复数据。
delete的效果有点像将mysql表中所有记录一条一条删除到删完,而truncate相当于保留mysql表的结构,重新创建了这个表,所有的状态都相当于新表。
2.删除表中的某些数据
delete from 命令格式:delete from 表名 where 表达式
例如,删除表teacher 中编号为1的记录:
|
|
六、修改表的列名与表名
1. 给列更名
|
|
例:
2. 给表更名
|
|
例:
七、修改表中的数据
1. 增加一个字段(一列)
|
|
type指该字段的类型,value指该字段的默认值
例:
2. 更改一个字段名字(也可以改变类型和默认值)
|
|
source_col_name 指原来的字段名称,
dest_col_name 指改后的字段名称
例:
3. 改变一个字段的默认值
|
|
例:
4. 改变一个字段的数据类型
|
|
例:
5. 向表中增加一个列作为主键
|
|
例:
6. 数据库某表的备份,在命令行中输入:
|
|
例:
7. 到处数据
|
|
例:
8. 导入数据
|
|
例:
|
|
9. 将两个表里的数据拼接后插入到另一个表里。下面的例子说明将t1表中的com2和t2表中的com1字段的值拼接后插入到tx表对应的字段里。
例:
|
|
10. 删除字段
|
|
八、查询表
MySQL查询的五种子句
where(条件查询),having(筛选语句),group by(分组),order by(排序),limit(限制结果数)
查询谓词:>,<,=,<>,!=,=>,=<
1. 查询数值型数据:
|
|
2. 查询字符串
|
|
3. 查询日期型数据
|
|
注:不同数据库对日期型数据存在差异: :
(1)MySQL:SELECT from tb_name WHERE birthday = ‘2011-04-08’
(2)SQL Server:SELECT from tb_name WHERE birthday = ‘2011-04-08’
(3)Access:SELECT * from tb_name WHERE birthday = #2011-04-08#
4. 查询逻辑型数据
|
|
逻辑运算符:nd or not
5. 查询非空数据
|
|
注:<>相当于PHP中的!=
6. 利用变量查询字符串数据
|
|
注:利用变量查询数据时,传入SQL的变量不必用引号括起来,因为PHP中的字符串与数值型数据进行连接时,程序会自动将数值型数据转变成字符串,然后与要连接的字符串进行连接