Mysql基本操作语法

命令行连接数据库:
mysql h-服务器主机地址 -u用户名 -p密码
如果是在本机操作,可省略-h参数,不是本机可以填写地址,或者端口3306
示例:mysql -u root -p sa


查看当前mysql版本信息及用户名
select version(),user();
version()返回版本号,user()返回连接数据库用户名



创建数据库
create database 数据库名;


查看数据库列表
show databases;


选择数据库
use 数据库名;
示例:use myschool;


删除数据库
drop database 数据库名;
示例:drop database myschool;
警告:不要把系统默认的数据库删了,如果删了需要重装。


创建数据库表
首先选择数据库,在创建表
cerate table [if not exists] 表名( //if not exists 应该是判断表是否存在
字段1 数据类型 [字段属性|约束] [索引] [注释] ,
字段2 数据类型 [字段属性|约束] [索引] [注释] 
)[表类型] [表字符集] [注释];
示例:
cerate table myschool( 
No int(4) primary key,//primary key 设置主键 //not null 非空约束
name char(10)
);
添加数据:
insert into 表名 value(值1),(值2),(值3);
示例:insert into name value('1'),('2'),('3');


字段的约束及属性
not null 非空约束
default 默认约束
unique key('字段') 唯一约束
primary key 主键约束
foreign key ('主表字段') 外键约束
auto_increment 自动增长 标识列


注释
create table test(
id int(11) unsigned//唯一约束 comment '编号'
)comment='测试表';


查看表
show tables;


查看表的定义
describe 表名;
desc 表名;
示例:use myschool;desc student;


删除表
drop table [if exists] 表名;


mysql帮助
help `查询的关键字`;


修改表名:
alter table<旧表名> rename [to] <新表名>;\\to为可选参数,使用与否不影响结果。仅修改表名,表结构不表
示例:alter table student rename stu;


添加字段
alter table 表名 add 字段名 数据类型 [属性];
示例:alter table add pwd varchar(50) not null;


修改字段
alter table 表名 change 原字段 新字段 数据类型 [属性];
示例:alter table demo change name username char(2) not null;


删除字段
alter table 表名 drop 字段名;
示例:alter table demo drop pwd;


添加主外键约束:
alter table 表名 add constraint 主键名 primary key 表名(主键字段); //主键名以pk_开头
示例:alter table grade add constraint pk_grade primary key grade(gradeId);


组合主键:
primary key(主键字段1,主键字段2);


添加外键约束
alter table 表名//从表 add constraint 外键名 foreign key(外键字段) references 关键表名(关联字段)//主表; \外键名以fk_开头
示例:alter table student add constraint fk_student_grade foreign key(gradeId) references grade(gradeId);


备份
方式1:
insert into 新表(字段1,字段2)\\新表必须存在
select 字段1,字段2
from 原表;
方式2:
create table 新表(select 字段1,字段2 from 原表);


删除数据:
delete from 表名 [where条件];条件删除,标识列继续
truncate table 表名;删除全部数据,标识列从头开始


limit子句:
limit [从第几条开始查\\从0开始,行数]

示例:limit 4,4;

执行事务
开始事务:begin; 
提交事务:commit;
撤销事务:rollback;


使用sql语句创建视图
create view 视图名
as 
<select语句>


使用sql语句删除视图
drop view [if exists] 视图名;


查看视图
select 字段1,字段2 from 视图名


数据备份
mysqldump -u 登录名 -p 密码 要备份的数据 [表名] > 文件名称


数据还原 -u 登录名 -p 密码 < 文件名称

创建普通用户

create user `用户名`@`主机名` [IDENTIFIED BY [Password] `密码`] 

示例:create user `teacher`@`localhost\\这地方可以是主机IP,可以是%` identified by '123456';

创建用户并授权

语法:GRANT priv_type on 数据库.表名\\*表示数据库中所有的表 

 to `用户名`@`主机名` [IDENTIFIED BY [Password]  `密码`

示例 :GRANT INSERT,SELECT\\all 表示全部权限 ON myschool.student 

to 'xiaoming'@'localhost' IDENTIFIED BY '123456';

修改用户密码

mysqladmin -u 用户名 -p password "新密码";


修改当前登录账户密码

set password = password("0000");

修改其他用户密码:

set password for `用户名`@`localhost` = password("88888");

删除用户:

drop user 用户名;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章