`
andy136566
  • 浏览: 290569 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

MySql基本操作总结

阅读更多

启动和停止服务:net start mysql

                        net stop mysql

 

进入交互式命令行:mysql -u root -p

                           mysql -u root -h db.imainary.com -p

 

数据库操作: show databases;

                    create database andy;

                   use andy;

                   drop database andy;

 

表管理:use andy;

            show tables;

             describe tablename;

            create table user(id int not null primary key,name  varchar(22)  not null);

            drop tablename;

 

索引:create index index_name on tablename(colum1,colum2,...);

 

 

 

管理数据

 

插入:insert into table_name(column1) values (value1);

         insert into table_name set name='andy';

 

序列的生成:定义表时:auto_increment

                  update table_name set id=LAST_INSERT_ID(id+1);

 

更新:update table_name set column1=value1 [where clause];

 

删除:delete author from Author where Author.id=1;

 

查询:select column1 from table1 [where clause];

         select databse();   #返回当前数据库的名称

 

内连接:select book.title,author.name from author, book where book.asuthor=author.id;

 

外连接:

           select book.title,author.name from author left join on book  book.asuthor=author.id;

           将包括left join左边表的所有行,right join同理。

 

自然外连接:

           select my_prod.name from my_prod natural left join their_prod

           这个自然连接将列出在my_prod和their_prod表中具有相同项的所以产品名称。

 

联合:select fname,lname from author

         union select name,nname from editor;

 

别名:as

 

基本排序:select column1 from table order by column1;

               desc反序排列。

 

分组:select rank from people group by rank;

         利用分组可以求得每类fg:工资的平均值

         select rand,avg(salary) from people group by rank;

 

限定结果:where子句会扫描数据库中的表;having查看取出后的行!

              select rank,avg(salary) from people where rank <> 'Private' group by rank having avg(salary)>10000;

 

              select * from people order by name limit 19,30;

             #查看第20行到49行记录

 

逻辑运算符:and、or、not

 

成员测试:in、between..and..

 

模式匹配:select name from people where name like 'andy%'

               %匹配任意数量的字符;_匹配单个字符。

正则表达式匹配:like是精确匹配

    select name from people where name regexp 'andy' #任意位置andy

 

 

 

 

高级特性:

全文搜索:全文搜索的关键之处在于FULLTEST索引。

               create table document(

                    url varchar(25) not null primary key,

                    title varchar(100) not null,

                    page_text text not null,

                    fulltext(title,page_text)               

               );

基于此表的结构,可以搜索在页面标题或页面主体中的任何位置包含单词“Mysql”的文档。必须保证根据索引来构造查询,而不是根据列。换句话说,可以同时匹配表中的title和page_text,而不能查找只存在于标题中的单词,除非只根据title创建单独的fulltext索引。

      select url from document where match (title,page_text) against ('java');

 

如果短语java在超过半数的行都有出现,因此被认为是一个没有检索意义的词(stopword)而被忽略。对于文本匹配,常见的stopword是“the”、“but”。

 

Boolean模式:

      执行更为复杂的全文搜索功能,它使用的语法与internet搜索引擎所用的语法相同。

      select url,title from document where match (title,page_text) against ('+mysql' -'java' in boolean mode);

 

一次添加大量数据时,应该去掉fulltext索引,插入数据,然后再重新创建索引。向带有fulltext索引的表中插入数据将付出昂贵的代价,而一次建立索引则能更好地工作。

 

事务处理;

           建表时指定type=InnoDB或者BDB

           set autocommit=0;

           begin;

           ...

           commit;

           在commit之前可以发出rollback;

 

表锁定:

          表锁定是低水平的事务处理。Mysql允许锁定一组表,使得只有一个客户可以使用。

           支持三种锁定:读、本地读和写;

           读锁定时将表锁定以供该客户及所有其他客户读取。只要在锁定状态,就不能对被锁定的表进行写入。读锁定和本地读锁定的区别在于,本地读锁定允许一个客户执行非冲突的insert语句,只要在锁定时没有发生来自mysql外部,对mysql文件的改变即可。否则,则需读锁定。

          写锁定将指定的表锁定,不允许任何其他客户对它进行任何访问、包括读和写。

      lock table account write;

      ...

      unlock tables;

         

 

批处理:

 

     命令行装载:mysql -h somehost -u uid -p < filename;

   

      Load命令:load data local infile 'books.dat' into table book;

                     

          load data local infile 'books.dat' into table book  fields terminated by ',';

 

     从mysql中取出数据:select * into outfile 'books.dat' fields enclosed by '"' terminated by ',' from book;

分享到:
评论

相关推荐

    MySQL 基础知识的总结

    MySQL是一种广泛使用的开源关系型数据库管理系统(RDBMS),它基于结构化查询语言(SQL)进行数据操作。本文将深入探讨MySQL的基础知识,包括安装、数据类型、表的创建、查询语句、索引以及事务处理等核心概念。 1....

    mysql数据库的基本操作总结

    MySQL 基本操作总结 MySQL 是一种关系型数据库管理系统,可以持久化数据到本地结构化查询概念中。在 MySQL 中,DB 代表数据库,存储数据的容器;DBMS 代表数据库管理系统,创建或管理 DB;SQL 代表结构化查询语言,...

    MySQL入门基础知识总结

    以下是对MySQL入门基础知识的详细总结: 一、MySQL安装与配置 1. 安装:在Windows、Linux或Mac OS上,可以通过官方网站下载相应平台的安装包,按照向导进行安装。 2. 配置:安装完成后,需要配置MySQL服务器,包括...

    mysql常用基础操作

    以下是从标题“mysql常用基础操作”及描述“mysql数据库的基本操作,后台的操作命令”中提炼出的关键知识点,涵盖了一系列重要的MySQL基本操作命令。 ### MySQL启动与管理 - **启动MySQL服务**:`/etc/init.d/...

    mysql命令简单总结

    本文将基于提供的部分内容对MySQL的一些常用命令进行详细解释,这些命令涵盖了启动、重启、关闭MySQL服务,以及登录、设置密码、权限管理等基础操作,并且包括了数据库与表的基本管理(创建、查看、删除),数据查询...

    mysql常用操作命令

    本文将对mysql的常用操作命令进行总结,包括连接mysql、查询版本信息、查询当前日期、查询服务器中的所有数据库、使用指定数据库、查询当前所操作的数据库名称、创建新数据库、删除数据库、创建表、显示数据库中的...

    Mysql基础总结思维导图

    本总结将深入探讨MySQL的基础知识,包括安装与配置、数据类型、表的创建与管理、SQL查询语言、索引与性能优化等方面,旨在帮助读者巩固对MySQL的理解。 一、安装与配置 在开始使用MySQL之前,需要先完成安装。对于...

    数据库Mysql基础知识总结

    **数据库MySQL基础知识...以上就是对“数据库MySQL基础知识总结”的详细解读,涵盖了MySQL的基础概念、数据类型、常用操作以及一些数据库设计和管理的基本常识。通过这些知识,可以为初学者构建一个坚实的学习基础。

    MySQL基础知识总结.pdf

    以上是对MySQL基础知识的总结,涵盖了数据库管理系统的各个方面,从基础的数据类型到复杂的查询语句和事务处理,再到数据库的日常管理和性能优化。掌握这些知识对于在IT行业中进行数据库开发和管理是必不可少的。

    Mysql数据库基础总结

    数据库和表的创建;数据库和表内容的操作;主键与外键关系...

    shp文件更新到mysql的操作总结和工具.ZIP

    属于mysql插件,使用方法根据文档可以将矢量shp数据更新...资源包括插件和操作总结文档两个部分,使用于数据库操作的基础人民软件,这个是对于技术支持人员适用的,属于shp文件更新到mysql的操作总结和软件打包的全部。

    Linux下mysql常用操作命令总结

    ### Linux下MySQL常用操作命令总结 #### 一、MySQL登录与退出 在Linux环境下操作MySQL时,首先需要确保MySQL服务已经正确安装并且运行。登录MySQL可以通过以下方式: 1. **定位MySQL目录**:通常MySQL的数据文件...

    mysql基本操作 1 控制台打开和关闭Mysql服务

    本教程将重点介绍在Windows操作系统中通过控制台来开启和关闭MySQL服务的基础操作。 一、安装MySQL服务 在开始进行控制台操作之前,你需要确保已经在你的计算机上安装了MySQL。通常,MySQL的安装过程中会自动创建一...

    操作mysql数据库的常用命令总结

    这些基本的MySQL命令构成了数据库管理的基础,熟练掌握它们能有效地进行数据库操作和管理。通过持续学习和实践,你可以进一步了解更多的高级特性和复杂的SQL语句,以满足更复杂的应用场景需求。

    MySQL的语句总结.

    本篇文章旨在为初学者提供一份简明扼要的MySQL语句指南,涵盖了数据库管理和操作的基本方面。以下将详细介绍文件中提到的一些关键知识点。 #### 1. 检查MySQL服务状态 ```bash sudo service mysqld status ``` 这...

    mysql常用命令总结

    本文将基于提供的部分内容对MySQL的基本操作命令进行详细解析,这些命令涵盖了数据库及表的基本管理,如创建、查询、更新等。掌握这些命令有助于更好地管理和操作MySQL数据库。 #### 一、查看当前数据库 - **命令...

Global site tag (gtag.js) - Google Analytics