`

MySQL基础学习

阅读更多

MYSQL常用查命令: 

/**note that all text commands must be first on line and end with ";" **/ 
mysql> select version();
查看MySQL的版本号


mysql> select current_date(); 查看MySQL的当前日期
mysql> select version(),current_date(); 同时查看MySQL的版本号和当前日期
mysql> show databases; 显示当前存在的数据库
mysql> USE mysql 选择使用数据库(USE和QUIT命令不需要分号结束)
Database changed
mysql> select database(); 显示当前选择的数据库
mysql> show tables; 显示当前数据库中存在的表
mysql> select * from db_table; 显示表(db)的内容
mysql> describe mytable; 显示表的结构
或show columns from 表名;

mysql> select
-> user()
-> /c//Clear the current input statement;
mysql>

练习如下操作:
  mysql> select
  -> USER()
  -> ,
  -> now()
  ->;


mysql> Select (20+5)*4;
mysql> Select (20+5)*4,sin(pi()/3); //用于计算及显示计算结果。
mysql> Select (20+5)*4 AS Result,sin(pi()/3); (AS: 指定假名为Result
即是把select(20+5)*4 作为 result来显示而已。)

查看MySQL当前用户占用的连接数

命令: show processlist;
如果是root帐号,你能看到所有用户的当前连接。如果是其它普通帐号,只能看到自己占用的连接。
show processlist;只列出前100条,如果想全列出请使用show full processlist;
mysql> show processlist;


一、数据库:

mysql> CREATE DATABASE abccs;  创建一个数据库 
   mysql> USE abccs 选择使用数据库
   mysql> drop database 数据库名; 删除数据库

二、表:

1、创建一个表mytable:

   mysql> CREATE TABLE mytable
   -> (
   -> name VARCHAR(20),
   -> sex CHAR(1),
   -> birth DATE,
   -> birthaddr VARCHAR(20)
   -> );
建立一个员工生日表,表的内容包含员工姓名、性别、出生日期、出生城市。
   由于name、birthadd的列值是变化的,因此选择VARCHAR,其长度不一定是20。
可以选择从1到255的任何长度,如果以后需要改变它的字长,可以使用ALTER TABLE语句。
   性别只需一个字符就可以表示:"m"或"f",因此选用CHAR(1);
   birth列则使用DATE数据类型。

2、查询刚添加的记录:
mysql> select * from mytable;
   Empty set (0.00 sec)   这说明刚才创建的表还没有记录。

3、添加新记录:
mysql> insert into mytable
   -> values
   ->(
   ->'abccs',
   ->'f',
   ->'1977-07-07',
   ->'china'
   ->);

正确的结果显示是:Query OK,1 row affected(0.00 sec);

4、用文本方式将数据装入一个数据库表:
  一条一条地添加新记录,实在太麻烦。
创建一个文本文件“mysql.txt”,按表结构排好每行每条记录,用定位符(tab)把值分开。
yanglong f 1977-07-07 china  
  mary f 1978-12-12 usa
  鸿儒 m 1970-09-02 usa
使用此命令将文本文件“mytable.txt”装载到表中:
   mysql> Load data local infile "mytable.txt" into table mytable;

数据传入命令load data local infile "文件名" into table 表名;
注意:你最好将文件复制到mysql/bin目录下,并且要先用use命令选表所在的库。

5、更新记录:
mysql> update mytable set birth = "1973-09-02" where name = "yanglong";

6、删除记录:
 mysql> delete from mytable where id=10; //删除掉所有id=10的记录;
mysql> delete from mytable where id=10 limit 1; //限制删除掉1条id=10的记录;
mysql> delete from mytable //删除一个表的全部记录;
/// mysql> DELETE FROM t1 WHERE C>10;
   mysql> drop table tablename1,tablename2,…; //删除整一个表或多个表,小心使用。

7、重命名表:
mysql> alter table t1 rename t2;

8、修改mysql的表结构:

查看mysql的表结构:
   mysql> describe mytable; 或用show columns from 表名; //效果是一样的



修改字段属性
mysql> alter table tablename modify id int(10) unsigned auto_increment primary key not null

修改默认值
mysql> alter table tablename alter id default 0

给字段增加primary key//外键
mysql> alter table tablename add primary key(id);

删除primary key
1)、alter table tablename drop primary key;
2)、drop primary key on tablename;

修改table表数据引擎
mysql> alter table tableName ENGINE = MyISAM (InnoDB);

增加一新字段名: //增加一个列属性
   mysql> alter table mytable add column single char(1);
mysql> ALTER TABLE table ADD field INT(11) UNSIGNED NOT NULL

删除字段
mysql> alter table t2 drop column c;

附:
为了改变列a,从INTEGER改为TINYINT NOT NULL(名字一样),
并且改变列b,从CHAR(10)改为CHAR(20),同时重命名它,从b改为c:
ALTER TABLE t2 MODIFY a TINYINT NOT NULL, CHANGE b c CHAR(20);

增加一个新TIMESTAMP列,名为d:
ALTER TABLE t2 ADD d TIMESTAMP;

在列d上增加一个索引并且使列a为主键
ALTER TABLE t2 ADD INDEX (d), ADD PRIMARY KEY (a);//未解决 据说a需为INT。

增加一个新的AUTO_INCREMENT整数列,命名为c:
ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT,ADD INDEX (c);

注意,我们索引了c,因为AUTO_INCREMENT柱必须被索引,
并且另外我们声明c为NOT NULL,因为索引了的列不能是NULL。

使用name列的头10个字符创建一个索引:
CREATE INDEX part_of_name ON customer (name(10));
//customer为表名

三、数据的备份与恢复:

导出和导入数据:(命令在DOS的mysql/bin目录下执行)
导出表
mysqldump --opt school > school.sql
注释:将数据库school中的表全部备份到school.sql文件,school.sql是一个文本文件,文件名任取,打开看看你会有新发现。

例如:1) mysqldump -h localhost -u root -p mybdmytable>test.sql //保存在/bin目录下

2) mysqldump -h localhost -u root -p mybdmytable>D:/test.sql //保存在D盘目录下


mysqldump --opt school teacher student > school.teacher.student.sql
注释:将数据库school中的teacher表和student表备份到school.teacher.student.sql文件,school.teacher.student.sql是一个文本文件,文件名任取,打开看看你会有新发现。

导入表
mysql
mysql>create database school;
mysql>use school;
mysql>source school.sql;
(或将school.sql换为school.teacher.sql / school.teacher.student.sql)

导出数据库
mysqldump --databases db1 db2 > db1.db2.sql
注释:将数据库dbl和db2备份到db1.db2.sql文件,db1.db2.sql是一个文本文件,文件名
任取,打开看看你会有新发现。
(举个例子:
mysqldump -h host -u user -p pass --databases dbname > file.dump
就是把host上的以名字user,口令pass的数据库dbname导入到文件file.dump中。)

导入数据库
mysql < db1.db2.sql

复制数据库mysqldump --all-databases > all-databases.sql
注释:将所有数据库备份到all-databases.sql文件,all-databases.sql是一个文本文件,文件名任取。

导入数据库
mysql
mysql>drop database a;
mysql>drop database b;
mysql>drop database c;
...
mysql>source all-databases.sql; (或exit退出mysql后 mysql < all-databases.sql)
<

分享到:
评论

相关推荐

    MySQL基础学习中所使用的数据库文件

    总结,MySQL基础学习中涉及的主要知识点包括SQL语言的使用、数据库结构的设计、数据的导入导出、以及数据库的管理与维护。通过分析提供的文件,我们可以看到这涵盖了创建数据库、插入数据和管理数据的基本过程。实际...

    Mysql基础学习资料

    Mysql基础学习资料Mysql基础学习资料Mysql基础学习资料Mysql基础学习资料

    mysql基础学习必学命令

    mysql 基础学习必学命令 mysql 是一个开源的关系型数据库管理系统,广泛应用于 web 应用程序中。在学习 mysql 之前,需要了解一些基本的命令和概念。本篇文章将为您介绍 mysql 的基本命令和知识点,以便您更好地...

    Mysql基础学习笔记.zip

    这份"Mysql基础学习笔记"的压缩包很可能包含了关于MySQL基础知识的详细教程和实践指南。以下是一些可能涵盖的重要知识点: 1. **安装与配置**: - MySQL的安装过程,包括Windows、Linux和Mac OS等不同平台的安装...

    MySQL基础学习笔记.docx

    总之,MySQL基础学习涉及数据库的基本概念、安装卸载流程、服务管理和SQL语句的使用。掌握这些基础知识是成为合格的MySQL用户的关键,对于日常的数据管理与分析工作至关重要。通过不断实践和深入学习,可以更熟练地...

    MySql基础学习图文教程包含语法和示例以及运行效果截图

    ### MySQL基础学习图文教程知识点概览 #### 一、MySQL环境配置 - **免安装版本配置**:本教程首先介绍了如何使用免安装版本的MySQL进行环境配置,这非常适合那些希望快速开始学习而无需复杂安装过程的新手用户。 ...

    mysql基础学习教程百度网盘下载.txt

    该教程为mysql基础学习教程,适合初入mysql的同学下载学习

    基于Docker快速构建mysql基础学习环境.zip

    基于Docker快速构建mysql基础学习环境

    MySQL基础PDF版

    2. **MySQL基础** - **DBMS**:数据库管理系统(DataBase Management System),如MySQL,用于科学地组织和存储数据,高效地获取和维护数据。 - **SQL语句分类**:主要包括DDL(数据定义语言)、DML(数据操作语言...

    MySQL基础学习笔记(第一周)

    MySQL安装启动,简单的数据库查询、表查询、以及表中数据的增删改。 适用于学习MySQL学习与记忆使用,

    MySQL基础 学习 超级详细.docx

    MySQL是全球广泛使用的开源关系型数据库管理系统,尤其在Web应用领域,它是最佳的RDBMS应用软件之一。本文将深入讲解MySQL的基础知识,包括其概述、...学习MySQL不仅可以提高工作效率,也是IT专业人士必备的技能之一。

    MySQL基础学习超级详细.pdf

    MySQL概述 什么是数据库? 答:数据的仓库,如:在ATM的示例中我们创建了一个 db 目录,称其为数据库 、什么是 MySQL、Oracle、SQLite、Access、MS SQL Server等?

    培训机构Mysql基础学习

    这是某某培训机构上课用的数据库基础学习指导资料,希望对各位有所帮助。

    mysql基础学习

    mysql入门学习第一讲,主要讲解数据库概述、数据库系统等。

    Mysql基础学习

    这个是阿里集团的内部培训资料,有需求的朋友可以下来看看

    MySql入门学习笔记.SQL

    自己写的用VS Code打开

    mysql学习资料大全

    首先,从标题我们可以推断,这份资料可能涵盖了MySQL的基础到进阶内容,包括安装配置、SQL语言基础、表设计、索引优化、事务处理、存储过程、触发器、视图、备份恢复、性能调优等多个方面。 描述中提到,这些资料是...

    MYSQL基础知识-学习笔记

    这份"MYSQL基础知识-学习笔记"涵盖了对MySQL的初步介绍以及基础概念,是初学者入门的理想资源。 首先,我们从MySQL的简介开始。MySQL是由瑞典的MySQL AB公司开发的,后被甲骨文公司收购。它是一款开源、免费的...

Global site tag (gtag.js) - Google Analytics