• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > MySQL常用语句讲解汇总

MySQL常用语句讲解汇总

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了MySQL,简介等相关知识,希望本文的分享对您有所帮助

一 数据库常用操作

  • mysql -u+username -p+password:登陆数据库管理系统,如mysql -uroot -p123。

  • create database dbName:创建数据库。

  • drop database dbName:删除数据库。

  • use dbName:使用指定数据库,因为数据库管理系统中可能存在多个数据库,通过名称使用指定的数据库。

  • show databases:展示数据库管理系统中全部数据库。

  • select database():显示正在使用的数据库。

  • set character_set_results=gbk:很多数据库不支持中文,设置编码方式,使中文正常显示,主要用于解决在DOS窗口中显示查询结果时中文乱码的问题。

  • source+path(.sql文件路径):导入数据库文件,生成数据库,即根据sql脚本生成数据库。

  • mysqldump mydatabase>保存目录 -uroot -p123:将数据库的全部信息保存到硬盘中的.sql脚本文件中,由于已经指定用户名与密码,所以在不进入数据库的情况下操作(语句结尾不加分号)。

  • create user username identified by 'password':创建指定名称与密码的用户,允许该用户访问数据库。

  • drop user username"%":删除用户。

二 表常用操作

  • create table tableName(columnName type(length)):创建数据库。

  • drop table tableName:删除数据库。

  • alter table tableName add XXXX:向数据库中增加字段。

  • alter table tableName drop columnName:删除字段。

  • alter table tableName change oldName newName XXXX:覆盖字段。

  • alter table tableName modify columnName XXXX:修改字段属性。

  • create table copyTable as select columnName/* from oldTable:复制表,可以复制全部字段,也可以复制部分字段。

  • mysqldump mydatabase mytable>保存目录 -uroot -p123:将数据库中的某一张表中的全部信息保存到硬盘中的.sql脚本文件中,注意:数据库与表之间用分号隔开,形成两个字符,一个代表数据库,一个代表数据库中的表,如果用"."连接,会被当做一个字符,即数据库,因为系统中不存在该名称的数据库,运行时产生错误。

  • select@@identity:获取刚刚插入的数据的id。

三 SQL语言分类

1.DDL

Data Definition Language,数据定义语言,create/alter/drop。
create:用于数据库与表的创建。
alter:用于表的修改。

  • alter table tbName add XXXX:向表中添加字段,或者为字段增加约束。

  • alter table tbName mofify XXXX:修改字段。

  • alter table tbName drop XXXX:删除字段或者约束。

drop:用于删除数据库、表、字段、字段约束。

2.DML

Data Manipulation Language,数据操纵语言,update/delete/insert。

3.DQL

Data Query Language,数据查询语言,select。

4.TCL

Transaction Control Language,事务控制语言,commit/rollback。

5.DCL

Data Control Language,数据控制语言,控制访问数据库的权限,grant/revoke。

四 DQL语句构成

create table tbName(id (1) primary key auto_increment,name varchar(10) not ,classNo (1),foreign key(classNo) references 父表(父表中被引用字段));
  • 在表创建完成以后,可以为表中字段添加约束:alter table tbName add 约束定义形式。

  • 一张表可以有多个外键字段,外键字段可以为null。

  • 父表中被引用字段数据不能重复,必须有unique约束。

⑶级联操作

为了保证子表中的数据跟随父表的变化而变化,可以为外键添加级联操作。
级联关系是父表控制子表,使子表发生同样的变化,不是子表控制父表,子表的变化不影响父表。不设置级联操作时,父表被引用字段被引用数据不能更改,外键字段可以更改为父表中主键字段的其他值。
级联更新:

create table tbName(id (1) primary key auto_increment,name varchar(10) not (1),foreign key(classNo) references 父表(父表中被引用字段)on update cascade);

当父表中的数据更新时,子表中的数据做出同样的更新。
级联删除:

create table tbName(id (1) primary key auto_increment,name varchar(10) not (1),foreign key(classNo) references 父表(父表中被引用字段)on delete cascade);

当父表中的数据被删除时,子表中对应的数据也同样被删除。
同时为外键设置级联更新与级联删除:

start transaction-- DML---commit,或者start transaction--DML--rollback; set autocommit=off(on);

以上两种方式只对当前会话有效。

5.隔离级别

  • read uncommitted:一个事务可以读取另一个事务未提交的数据,这个数据被称为脏数据。

  • read committed:其他事务频繁地提交数据,另个事务(时间跨度大)在未提交之前多次读取提交的数据,可能出现多次读取的数据不一致。

  • repeatable read:事务首次从数据库中读取数据,然后将数据保存在内存中,以后不是从数据库,而是从内存中读取数据。这种隔离级别可能导致读取的数据与数据库中数据不一致,出现“幻想”。

  • serializable:一个事务操作完数据以后,其他事务才可以操作。

6设置隔离级别

  • set global transaction isolation level XXXX:对所用会话有效。

  • set session transaction isolation level XXXX:只对当前会话有效。

7.查看隔离级别

  • select@@tx_isolation: 查看当前会话的隔离级别,另一种方式 select@@session.tx_isolation。

  • select@@global.tx_isolation: 查看全局的事务隔离级别。

十四 行级锁

1.什么是行级锁? <

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 分享下mysql各个主要版本之间的差异
  • MySQL essential版本和普通版本有什么区别?
  • redhat 5.4下安装MYSQL全过程
  • 如何用SQL命令查看Mysql数据库大小
  • 解析mysql中如何获得数据库的大小
  • 解析mysql修改为utf8后仍然有乱码的问题
  • 5个常用的MySQL数据库管理工具详细介绍
  • 解析在MySQL里创建外键时ERROR 1005的解决办法
  • 解析远程连接管理其他机器上的MYSQL数据库
  • mysql 精简过程(删除一些文件)

相关文章

  • 2017-05-11SQL查询超时的设置方法(关于timeout的处理)
  • 2018-12-05mysql 协议的processInfo命令包及解析
  • 2017-05-11PHP5 mysqli的prepare准备语句使用说明
  • 2018-12-05mysql myisam 优化设置设置
  • 2018-12-05RAC cache fusion机制实现原理分析
  • 2017-05-11浅谈mysql数据库中的using的用法
  • 2017-05-11MySQL-MMM安装指南(Multi-Master Replication Manager for MySQL)
  • 2018-12-05MySQL学习之Java连接MySQL数据库的图文代码实例
  • 2018-12-05SQLServer 中的死锁说明
  • 2018-12-05Oracle Index 的三个问题

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • 为什么要做主从复制?
    • mysql DBA:mysqladmin常用命令总结
    • mysql 主从服务器的简单配置
    • 最常用的SQL语句
    • Oracle 插入超4000字节的CLOB字段的处理方法
    • 连接mysql时提示10038怎么处理
    • oracle 集合
    • 提高MySQL数据库的安全性(二)
    • mysql的binlog怎么才能记录除了某表外的操作?
    • oracle 创建表空间详细介绍

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有