MySQL命令(SQL语句)

MySQL命令(SQL语句)1.mysql登陆 完整登陆命令: mysql -u root -p xxxxx -h 127.0.0.1 -P 23306 语法:mysql -u 用户名 -p 密码 -h mysql服务器的IP地

MySQL命令(SQL语句)

1.mysql登陆

完整登陆命令:

mysql -u root -p xxxxx -h 127.0.0.1 -P 23306

语法:mysql -u 用户名 -p 密码 -h mysql服务器的IP地址 -P 使用的端口号

 非完整登陆命令:

mysql -u root -p 回车(回车后再输入密码)

mysql -u root -p xxxxx -h 127.0.0.1 回车(回车后再输入密码)

 

2.SQL语句:

SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL。

1. 数据查询语言DQL
数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE
子句组成的查询块:
SELECT <字段名表>
FROM <表或视图名>
WHERE <查询条件>

2 .数据操纵语言DML
数据操纵语言DML主要有三种形式:
1) 插入:INSERT
2) 更新:UPDATE
3) 删除:DELETE

3. 数据定义语言DDL
数据定义语言DDL用来创建数据库中的各种对象—–表、视图、
索引、同义词、聚簇等如:
CREATE TABLE/VIEW/INDEX/SYN/CLUSTER
| | | | |
表 视图 索引 同义词 簇

DDL操作是隐性提交的!不能rollback 

4. 数据控制语言DCL
数据控制语言DCL用来授予或回收访问数据库的某种特权,并控制
数据库操纵事务发生的时间及效果,对数据库实行监视等。如:
1) GRANT:授权。

2) ROLLBACK [WORK] TO [SAVEPOINT]:回退到某一点。
回滚—ROLLBACK
回滚命令使数据库状态回到上次最后提交的状态。其格式为:
SQL>ROLLBACK;

3) COMMIT [WORK]:提交。

    在数据库的插入、删除和修改操作时,只有当事务在提交到数据
库时才算完成。在事务提交前,只有操作数据库的这个人才能有权看
到所做的事情,别人只有在最后提交完成后才可以看到。
提交数据有三种类型:显式提交、隐式提交及自动提交。下面分
别说明这三种类型。

(1) 显式提交
用COMMIT命令直接完成的提交为显式提交。其格式为:
SQL>COMMIT;

(2) 隐式提交
用SQL命令间接完成的提交为隐式提交。这些命令是:
ALTER,AUDIT,COMMENT,CONNECT,CREATE,DISCONNECT,DROP,
EXIT,GRANT,NOAUDIT,QUIT,REVOKE,RENAME。

(3) 自动提交
若把AUTOCOMMIT设置为ON,则在插入、修改、删除语句执行后,
系统将自动进行提交,这就是自动提交。其格式为:
SQL>SET AUTOCOMMIT ON;

 

 注意:

  1.进入mysql后所有命令必须以分号(;)结尾

  2.如果你要查一些数据时显示乱,屏幕宽度不够展不开,你就在命令结尾加G最后不要加分号,这样显示就会清晰了.

3.查看本数据库版本与编码集

进入数据库后输入s

MySQL命令(SQL语句)

 

4.数据库的增删改查

数据库的增删改查说白了其实就是文件夹的增删改查


create database db1 charset utf8;(这里在创建库时指定了编码集)

create database db11; (不指定编码集也可) 

此时就在你安装数据库的文件夹下的data文件中新增了两个文件夹(db1和db11)

MySQL命令(SQL语句)

 

查看所有数据库时,有数据库安装时自带的数据库也一并显示出来了

 MySQL命令(SQL语句)

 


show create database db1;(查看刚建的数据库的配置)
show databases;(查看所有数据库–库名)

查看当前所在的数据库:select database();

 

由于你my.ini文件中配置制定了编码集,所以不指定编码集的数据库db11也是utf8.

 

MySQL命令(SQL语句)

 

 


alter database db1 charset gbk;(将数据库db1的编码集改为gbk了)

 

切换数据库

use +数据库名+;


drop database db1;(删除数据库db1)

 

5.数据库中表的增删改查

表的增删改查可以看做是对文件的增删改查

增加表时你需要先进入一个数据库(use +数据库名+;),增加表时就在你进入的数据库中新增表

 


create table t1(id int,name char); 新增表t1,表中有两个字段id和name,id是整形,name是字符串

show create table t1;(查看该表具体信息)

 

如果没进入数据库你想直接查就在对应的表名前加数据库名.

show create table db1.t1;

show tables;查看当前数据库下所有表名

desc t1;查看某表中所有字段以及字段的属性(desc是describe的缩写)

select id from n; 查询表n中id字段的所有内容

select * from n;查询表n中所有内容


alter table t1 modify name char(6);(将name字段属性改为字符串,宽度改为6,默认宽度是1)modify是固定写法

alter table t1 change name NAME char(7);(修改字段名name改为NAME,并且宽度改为7)change是固定写法新的名字NAME后面必须接新字段的属性,否则报错,你可以是新的属性也可以是原来的属性.

 

修改表名:

alter table ttt rename xxx;将ttt表名改为xxx

 

增加字段:

 alter table xxx add n char(10) ; 在xxx表中增加一个n字段,数据类型为char长度为10

alter table xxx add n char(10) first; 将n字段添加到第一个字段位置 

alter table xxx add n char(10) after id; 将n字段添加到id字段位置的后面 

 


drop table t1;删除表t1

删除字段:

alter table xxx drop n ;删除xxx表中n字段

 

复制表格(可以在同数据库但是不要重名,也可以在不同数据库可以重名,)

 

①既复制表结构,又要数据:

create table t1 select host,user from mysql.user; (就是把你查到的某个表的数据select…,直接在创建表格时直接写在后面就行了,写在了表名后面)

create table t1 select * from db1.ttt; 

 

②只要表结构,不要数据:

法一:就是在后面加个不成立的条件,让他查不到对应的数据就行了,查到的内容为空就只剩表结构了

create table t1 select host,user from mysql.user where 1>2; 

 

法二:like

create table t5 like t2;这样就把t2的表结构复制过来创建了t5

 

 

6.行记录(表中内容)的增删改查


insert  into t1(id,name) values(1,”egon1″),(2,”egon2″),(3,”egon3″);(新增了3条行记录,id为1,name为egon1…)into可以省略

insert   into  t1  values(1,”egon1″),(2,”egon2″),(3,”egon3″);不写字段,默认就按照所有字段来插入

select id,name from db1.ttt;(查看ti表中id和name两个字段)这里吧数据库db1也加上了,其实你在db1数据库下就不用了写db1,直接写表名字即可
select * from db1.ttt;查询t1表下所有字段

MySQL命令(SQL语句)

 

 


update db1.t1 set name=”wwe”;将t1表中所有name字段全部写成wwe

update db1.t1 set name=”ALEX” where id=2;将id等于2的name字段改成ALEX


delete from t1;(将所有记录全部删,表变成空表)

delete from t1 where id=2;(只删除id=2的记录)

 

 

7.存储引擎

存储引擎就是表的类型

 

查看支持的所有存储引擎

show engines;

或show enginesG 查的比较详细(有G时不加分号结尾)

MySQL命令(SQL语句)

 

创建表时指定存储引擎:

create table t1(id int)engine=innodb;不指定默认就是innodb

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/8822.html

(0)
上一篇 2023-02-21
下一篇 2023-02-21

相关推荐

  • 多版本并发控制 MVCC「终于解决」

    多版本并发控制 MVCC「终于解决」本篇文章主要介绍了 多版本并发控制(MVCC)在 MySQL 的实现

    2023-06-05
    140
  • Python强大的数据科学功能

    Python强大的数据科学功能Python自问世以来,凭借着其简洁、易学、高效等优势,逐渐成为了数据科学领域的热门编程语言。不仅如此,Python还拥有许多强大的数据科学功能,包括数据处理、数据挖掘、机器学习等等。本文将从多个方面介绍Python在数据科学领域的强大功能。

    2024-04-18
    72
  • 计算节点时间并标出关键路线_数据未找到当前工作流节点

    计算节点时间并标出关键路线_数据未找到当前工作流节点第1节,关键字 驰骋工作流引擎 流程快速开发平台 workflow ccflow jflow 第1节,计算到达节点设计(方向条件规则) 节点的方向条件,就是节点在发送的时候遇到分支,如何让系统选择业…

    2023-04-13
    156
  • MySQL学习笔记(18):SQL优化[亲测有效]

    MySQL学习笔记(18):SQL优化[亲测有效]本文更新于2019-08-18,使用MySQL 5.7,操作系统为Deepin 15.4。 优化SQL语句的步骤 通过SHOW STATUS了解SQL语句的执行情况 操作的计数,是对执行次数进行计数,

    2023-03-20
    141
  • 如何提升推荐系统的可解释性?京东智能推荐卖点技术全解析

    如何提升推荐系统的可解释性?京东智能推荐卖点技术全解析**导读:**京东智能商客之推荐卖点是基于NLP的产品,目前已广泛地助力和赋能于京东商城的各个平台。今天和大家分享一下自然语言处理如何在工业界落地实现。主要围绕以下5个方面展开: 推荐卖点技术背景 架

    2023-05-15
    141
  • 优化网页标签,提升页面流量

    优化网页标签,提升页面流量在现代互联网时代,网页的流量对于网站运营来说是至关重要的。为了吸引更多的访问者,网站需要进行优化,而其中一个关键的优化手段就是对网页标签进行优化。在本文中,我们将会从多个方面介绍如何优化网页标签,从而提升页面流量。

    2024-01-30
    101
  • 使用os.chmod更改文件权限

    使用os.chmod更改文件权限对于任何操作系统来说,控制文件和目录权限是一项非常重要的任务。为了保护文件或目录,操作系统需要确保它们只能被授权用户访问。这是操作系统的基本安全措施。Python的os库提供了os.chmod()函数来实现更改文件和目录权限的功能。在本文中,我们将深入探讨该函数的用法。

    2024-06-08
    54
  • 专业版数据库常用表介绍「终于解决」

    专业版数据库常用表介绍「终于解决」专业版数据库常用表介绍 ICTransactionType 单据类型表,FTemplateID?是关联模板信息表的字段,FID?关联ICStockBill?中的?FTranType字段。 ICTem…

    2023-04-07
    177

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注