Mysql基本用法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Mysql基本用法(关键字不区分大小写)

mysql接受自由格式的输入:它收集输入行但直到看见分号才执行,字符串用单引号或双引号包围都可以

MySQL服务器支持3种注释风格:

·从‘#’字符从行尾。

·从‘-- ’序列到行尾。请注意‘-- ’(双破折号)注释风格要求第2个破折号后面至少跟一个空格符(例如空格、tab、换行符等等)。该语法与标准SQL注释语法稍有不同

·从/*序列到后面的*/序列。结束序列不一定在同一行中,因此该语法允许注释跨越多行。

#查询MySQL数据库中所有用户的信息

SELECT * FROM er;

#查询MySQL数据库中所有用户

SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM er;

#查看数据库中某个用户的权限

show grants for 'root'@'%';

列出用户所有权限(很多截图截不到)select * from er where user='root';

#查看user表结构

desc er;

#登录数据库

mysql -hlocalhost -uroot -p;

#修改密码

mysqladmin -uroot -pold password new;

#显示数据库

SHOW DATABASES;

#显示数据表

SHOW TABLES;

#选择数据库

use examples;

#创建数据库并设置编码utf-8 多语言

create database `examples` default character set utf8 collate utf8_general_ci; #删除数据库

drop database examples;

mysql用表格(行和列)方式显示查询输出。第一行包含列的标签,随后的行是查询结果。通常,列标签是你取自数据库表的列的名字。如果你正在检索一个表达式而非表列的值(如刚才的例子),mysql用表达式本身标记列。

查询MySQL的版本号和当前日期

SELECT VERSION(),CURRENT_DATE();

查询结果如下:

可将mysql用作一个简单的计算器

SELECT SIN(PI()/4),(4+1)*5;

查询结果如下:

#查询MySQL可用的字符集

SHOW CHARACTER SET;

#查看字符集的校对规则

SHOW COLLATION LIKE 'latin1%';

#创建表

create table test(

id int(10) unsigned zerofill not null auto_increment,

email varchar(40) not null,

ip varchar(15) not null,

state int(10) not null default '-1',

primary key (id)

)engine=InnoDB;

MYSQL同一服务中两个数据库A,B,复制其中的一张表到另一数据库中create table b.table1as select*from a.table1

#显示表结构:例显示test表的表结构

DESCRIBE send;或show columns from send;

#删除表

drop table test;

#重命名表

alter table test_old rename test_new;

#添加列

alter table test add cn int(4) not null;

#修改列

alter table test change id id1 varchar(10) not null;

#删除列

alter table test drop cn;

#创建索引

alter table test add index (cn,id);

#删除索引

alter table test drop index cn

#插入/装载数据

insert into test (id,email,ip,state) values(2,'qq@','127.0.0.1','0');

SQL命令导入文件,也可在navicat中直接通过导入(import)文件操作进行数据装载LOAD DATA LOCAL INFILE 'event.txt' INTO TABLE event;

#删除数据

delete from test where id = 1;

#修改数据

update test set id='1',email='q@' where id=1;

#查数据

select * from test;#取所有数据

select * from test limit 0,2;#取前两条数据

select * from test email like '%qq%' #查含有qq字符_表示一个字符%表示多个字符

select * from test order by id asc;#降序desc,升序ASC

select * from test id not in('2','3');#id不含2,3或者去掉not表示含有

select * from test timer between 1 and 10;#数据在1,10之间

MySQL提供的模式匹配:

1.标准的SQL模式匹配(操作符:LIKE/NOT LIKE)

SQL模式匹配允许你使用“_”匹配任何单个字符,而“%”匹配任意数目字符(包括零字符)。在MySQL中,SQL的模式默认是忽略大小写的。例名字为三个字符’ma_’;以b开头:’b%’;以b结尾:’%b’;包含b:’%b%’。查询出表中名字包含b的记录为:SELECT * FROM pet WHERE name LIKE '%b%';

2.一种基于象Unix实用程序如vi、grep和sed的扩展正则表达式模式匹配的

格式

由MySQL提供的模式匹配的其它类型是使用扩展正则表达式。当你对这类模式进行匹配测试时,使用REGEXP和NOT REGEXP操作符(或RLIKE 和NOT RLIKE,它们是同义词)。‘.’匹配任何单个的字符。·字符类“[...]”匹配在方括号内的任何字符。例如,“[abc]”匹配“a”、“b”或“c”。为了命名字符的范围,使用一个“-”。“[a-z]”匹配任何字母,而“[0-9]”匹配任何数字。“ * ”匹配零个或多个在它前面的字符。例如,“x*”匹配任何数量的“x”字符,“[0-9]*”匹配任何数量的数字,而“.*”匹配任何数量的任何字符。为了定位一个模式以便它必须匹配被测试值的开始或结尾,在模式开始处使用“^”或在模式的结尾用“$”.

相关文档
最新文档