MySql速查-1-数据库基本操作

MySql is RDBMS(Relational Database Management System)

创建连接mysql的用户

% mysql -p -u root

mysql> CREATE USER ‘sampadm‘@‘localhost‘ IDENTIFIED BY ‘secret‘;

mysql> GRANT ALL ON sampdb.* TO ‘sampadm‘@‘localhost‘

连接mysql

mysql -h host_name -p -u user_name

退出mysql

mysql> quit

执行mysql

mysql> Select Now(),User(),Version();

mysql> Select Now(),User(),Version()\g // ; \g 终止语句

mysql> Select Now(),User(),Version()\G //竖排显示,每行一个值

脚本执行

% mysql < myscript.sql

% mysql sampdb < create_member.sql

创建数据表

mysql> CREATE TABLE member

(

member_id INT UNSIGNED NOT NULL AUTO_INCREMENT,

PRIMARY KEY (member_id),

first name VARCHAR(20) NOT NULL,

last name VARCHAR(20) NOT NULL,

suffix VARCHAR(5) NOT NULL,

expiration DATE NULL

);

查看表结构

mysql> DESCRIBE member;

显示特定列

mysql> SHOW COLUMNS FROM member LIKE ‘%name‘;

列出表

mysql> SHOW TABLES;

% mysqlshow sampdb

列出数据库

mysql> SHOW DATABASE;

% mysql show

插入数据行

mysql> CREATE TABLE student

(

name VARCHAR(20) NOT NULL,

sex ENUM(‘F‘,‘M‘) NOT NULL,

student_id INT UNSIGNED NOT NULL AUTO_INCREMENT,

PRIMARY KEY (student_id)

)ENGINE = InnoDB

mysql> INSERT INTO student VALUES(‘Alex‘,‘M‘,NULL);

mysql> INSERT INTO student VALUES(‘Alex‘,‘M‘,NULL),(‘Bob‘,‘F‘,NULL); //括号内包含所有列

mysql> INSERT INTO student (name,sex) VALUES(‘Alex‘,‘M‘);

加载数据文件

mysql> LOAD DATA LOCAL INFILE ‘member.txt‘ INTO TABLE member;

% mysqlimport --local samdb member.txt

检索信息

书定顺序,Select--From--Where--Group by--Having--Order by

执行顺序,From--Where--Group by--Having--Select--Order by

NULL值表示‘无数据‘,不能与‘有数据‘的值比较

LIMIT number,限制显示行

日期函数,YEAR(),MONTH(),DAYOFMONTH()

变量,@variable

mysql> SELECT @birth:=birth FROM student where name=‘Bob‘;

mysql> SELECT name FROM student WHERE birth<@birth ORDER BY birth;

mysql> SET @today=CURDATE();

mysql> SET @one_week_ago:=DATE_SUB(@today,INTERVAL 7 DAY);

统计信息

DISTINCT,清除重复信息

COUNT(*),计数所有行

COUNT(数据列),非NULL行

mysql> SELECT state,COUNT(*) FROM president GROUP BY status ORDER BY count DESC LIMIT 4;

多表联结

left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录

right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录

inner join(等值连接) 只返回两个表中联结字段相等的行

exists 与 in 最大的区别在于 in引导的子句只能返回一个字段,比如:

select name from student where sex = ‘m‘ and mark in (select 1,2,3 from grade where ...),

in子句返回了三个字段,这是不正确的,exists子句是允许的,但in只允许有一个字段返回,在1,2,3中随便去了两个字段即可

删除数据行

DELETE FROM tbl_name WHERE which rows to delete;

更新数据行

UPDATE tbl_name SET which columns to change WHERE which rows to update;

简化链接过程

1. ~/.my.cnf

[client]

host=server_host

user=your_name

password=your_pass

2. 命令历史

% !my //最近使用过的命令

3. alias sampdb ‘mysql -h host_name -p -u sampadm sampdb‘

聚合函数,MIN(),MAX(),SUN(),AVG()

创建数据库

CREATE DATABASE [IF NOT EXISTS] db_name [CHARACTER SET charset][COLLATE collation];

删除数据库

DROP DATABASE db_name;

变更数据库

ALTER DATABASE [db_name][CHARACTER SET charset][COLLATE collation];

时间: 2024-10-13 09:10:18

MySql速查-1-数据库基本操作的相关文章

MySql速查手册

索引定义索引类型索引注意事项事务隔离级别read uncommitted 未提交读read committed 提交读repeatable 重复读Serializable可串行化隔离界别查询数据库锁数据类型INTvarchar时间类型Java对应Mysql类型常用函数常用Sql存储引擎InnoDBMyISAM知识点最左匹配原则=和in可以乱序单表尽量not null业务常见问题特殊字符插入问题 toc 索引 定义 索引用来快速地寻找那些具有特定值的记录,所有MySQL索引都以B树的形式保存.就像

MySQL学习5:数据库基本操作

以下均是在Windows 64位操作系统下的命令行使用. 学习之前我们先来解释一下MySQL语法格式中的一些符号代表的含义: (1)中括号([])表示存在或者不存在都可以,是可选参数.比如:SHOW {DATABASES | SCHEMAS} [LIKE 'pattern' | WHERE expr];此语法格式中的[]括起来的内容是可以不加的. (2)大括号({})表示命令中必须出现,是必选参数.  比如:CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] d

几个较好的SQL速查手册网址

微软 SQL server 数据库开发手册 数据库设计 Transact-SQL 速查手册 数据库设计 MySQL 中文参考手册速查 结构化查询语言 SQL 学习手册速查 转自:http://www.cnblogs.com/yencain/articles/1313465.html

jdbc之实现数据库增删改查的最基本操作

关于JDBC 之前很早学过jdbc了,可是学的不够扎实,连接MySQL总是出问题,于是这两天又把jdbc好好学了一遍.  定义:JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成.JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序. JDBC库中所包含的API通常与数据库使用于: 连接到数据库 创建SQ

mysql 数据库基本操作大全

熟悉和安装MySQL数据库后,下面介绍数据库的基本操作,以下所有数据库语句均在"mysql>"操作环境中执行. 一.mysql---增删改查增: //创建数据库create database school; //创建表create table info (id int not null auto_increment primary key,name e char(10) not null,score decimal(5,2),hobby int(2));注释: primary k

1Python全栈之路系列之MySQL数据库基本操作

Python全栈之路系列之MySQL数据库基本操作 MySQL数据库介绍 MySQL是一种快速易用的关系型数据库管理系统(RDBMS),很多企业都在使用它来构建自己的数据库. MySQL由一家瑞典公司MySQL AB开发.运营并予以支持.它之所以非常流行,原因在于具备以下这些优点: 基于开源许可发布,无需付费即可使用. 自身的功能非常强大,足以匹敌绝大多数功能强大但却价格昂贵的数据库软件. 使用业内所熟悉的标准SQL数据库语言. 可运行于多个操作系统,支持多种语言,包括 PHP.PERL.C.C

mysql数据库基本操作练习

一.MySQL基本管理 1.使用mysql命令连接数据库. 2.练习查看/删除/创建库的相关操作. 3.练习查看/删除/创建表的相关操作. 实验步骤: 1.使用mysql命令连接数据库 连接MySQL服务器时,最基本的用法是通过 -u 选项指定用户名.-p指定密码.密码可以写在命令行(如果不写,则出现交互,要求用户输入),当然基于安全考虑一般不推荐这么做: [[email protected] ~]# mysql -uroot -p1234567         //可以紧挨着选项,不要空格 W

用SpringBoot+MySql+JPA实现对数据库的增删改查和分页

使用SpringBoot+Mysql+JPA实现对数据库的增删改查和分页      JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中.  使用Springboot和jpa对数据库进行操作时,能够大大减少我们的工作量,在jpa中,已经在底层封装好了增删查的功能和sql语句,可以使我们进行快速开发 项目流程 一.新建一个项目 二.配置文件 #数据源配置 spring.dat

Oracle数据库速查知识文档

项目介绍 该项目记录了Oracle相关的速查知识汇总,主要涉及了oracle基础使用.SQL基础.oracle函数.oracle触发器.oracle高级查询.PL/SQL编程基础.PL/SQL存储过程等.若有新增,还将不断添加中. SQL基础部分 1.简介 Oracle Database,又名Oracle RDBMS,或简称Oracle,是甲骨文公司的一款关系数据库管理系统.本课程主要介绍Oracle的SQL基础,包括表空间的概念,如何登录Oracle数据库,如何管理表及表中的数据,以及约束的应