mysql命令行命令和SQL语句

时间:2022-08-27 21:24:43
原文地址:mysql命令行命令和SQL语句作者:让拖鞋再飞一会儿 . 常用mysql命令行命令

1.启动MYSQL服务net startmysql

停止MYSQL服务 netstop mysql

2 . netstat –na | findstr3306 查看被监听的端口,findstr用于查找后面的在端口是否存在

3 .在命令行中登陆MYSQL控制台 , 即使用 MYSQL COMMEND LINE TOOL

语法格式 mysql –user=root –password=123456db_name

mysql –uroot –p123456db_name

4 .进入MYSQL命令行工具后 , 使用status; /s 查看运行环境信息

5 .切换连接数据库的语法 : use new_dbname;

 

6. 显示所有数据库: showdatabases;

7 .显示数据库中的所有表 : show tables;

8. 显示某个表创建时的全部信息: show create tabletable_name;

9. 查看表的具体属性信息及表中各字段的描述

Describe table_name; 缩写形式 :desc table_name;

 

.MySql中的SQL语句

1 .数据库创建 : Create database db_name;

数据库删除 :Drop database db_name; 删除时可先判断是否存在,写成 : drop database if exitsdb_name

 

2. 建表: 创建数据表的语法 : create table table_name (字段1数据类型, 字段2数据类型);

: create table mytable (id int , usernamechar(20));

删表 : drop table table_name; :drop table mytable;

8 .添加数据 : Insert into 表名 [(字段1, 字段2 ,….)] values (1, 2 ,…..);

如果向表中的每个字段都插入一个值,那么前面 [] 括号内字段名可写也可不写

: insert into mytable(id,username) values (1,’zhangsan’);

9. 查询 : 查询所有数据 : select * fromtable_name;

查询指定字段的数据 : select 字段1, 字段2from table_name;

: select id,username frommytable where id=1 order by desc;

多表查询语句------------参照第17条实例

10 .更新指定数据 , 更新某一个字段的数据(注意,不是更新字段的名字)

Update table_name set 字段名=’新值’[, 字段2=’新值’ ,…..][where id=id_num] [order by 字段 顺序]

: update mytable setusername=’lisi’ where id=1;

Order语句是查询的顺序 , :order by id desc(asc), 顺序有两种: desc倒序(100—1,即从最新数

据往后查询),asc(1-100)

Whereorder语句也可用于查询select 与删除delete

11. 删除表中的信息:

删除整个表中的信息: delete from table_name;

删作表中指定条件的语句: delete from table_name where条件语句 ; 条件语句如 :id=3;

 

12 .创建数据库用户

CREATE USER username1 identifiedBY ‘password’, username2IDENTIFIED BY ‘password’….

一次可以创建多个数据库用户

13 .用户的权限控制:grant

库,表级的权限控制: 将某个库中的某个表的控制权赋予某个用户

Grant all ON db_name.table_name TO user_name [ indentified by ‘password’];

14. 表结构的修改

① 增加一个字段格式:

altertable table_name addcolumn (字段名字段类型); ----此方法带括号

指定字段插入的位置:

altertable table_name addcolumn 字段名字段类型 after 某字段;

删除一个字段:

altertable table_namedrop字段名;

 

③ 修改字段名称/类型

altertable table_namechange 旧字段名新字段名 新字段的类型;

④ 改表的名字

alter tabletable_name rename tonew_table_name;

⑤ 一次性清空表中的所有数据

truncate table table_name; 此方法也会使表中的取号器(ID)1开始

 

15. 增加主键,外键,约束,索引。。。。(使用方法见17实例)

约束(主键Primary key、唯一性Unique、非空NotNull

自动增张 auto_increment

③外键Foreign key-----reference table_name(col_name列名)配合使用,建表时单独使用

删除多个表中有关联的数据----设置foreign key setnull ---具体设置参考帮助文档

 

16 .查看数据库当前引擎

SHOW CREATE TABLE table_name;

修改数据库引擎

ALTER TABLE table_name ENGINE=MyISAM |InnoDB;

17 . 一个SQL语句运用实例:--1 userscreatetable users (id int primary key auto_increment,nikename varchar(20)not null unique,password varchar(100) not null,addressvarchar(200)); --2 articles,在建表时设置外键createtable articles (id int primary key auto_increment,content longtextnot null,userid int,constraint foreign key (userid) referencesusers(id) on delete set null); -------------------------------------------------------------------------2.1 articles,建表时不设置外键create table articles (id int primary keyauto_increment,content longtext not null,userid int);--2.2 articles表设置外键alter table articles add constraint foreign key(userid) references users(id) on delete setnull;--------------------------------------------------------------------------3. users表中插入数据,同时插入多条insertinto users (id,nikename,password,address) values(1,'lyh1','1234',null),(10,'lyh22','4321','湖北武汉'),(null,'lyh333','5678','北京海淀');--4. article中插入三条数据insertinto articles (id,content,userid) values(2,'hahahahahaha',11),(null,'xixixixixix',10),(13,'aiaiaiaiaiaiaiaiaiaiaiaia',1),(14,'hohoahaoaoooooooooo',10);--5. 进行多表查询,选择users表中ID=10的用户发布的所有留言及该用户的所有信息selectarticles.id,articles.content,users.* from users,articles whereusers.id=10 and articles.userid=users.id order by articles.iddesc; --6. 查看数据库引擎类型show create table users;--7. 修改数据库引擎类型alter table users engine=MyISAM;---因为users表中ID被设置成外键,执行此句会出错--8. 同表查询,已知一个条件的情况下.查询ID号大于用户lyh1ID号的所有用户selecta.id,a.nikename,a.address from users a,users b whereb.nikename='lyh1' anda.id>b.id;------也可写成

select id,nikename,address from users whereid>(select id from users wherenikename='lyh1');