select * from emp; #注释

#---------------------------

#----命令行连接MySql---------

#启动mysql服务器

net start mysql

#关闭

net stop mysql



#进入

mysql -h 主机地址 -u 用户名 -p 用户密码

#退出

exit

#---------------------------

#----MySql用户管理---------

#修改密码:首先在DOS 下进入mysql安装路径的bin目录下,然后键入以下命令:

mysqladmin -uroot -p123 password 456;

#增加用户

#格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by '密码'

/*

如,增加一个用户user1密码为password1,让其可以在本机上登录, 并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入mysql,然后键入以下命令:


grant select,insert,update,delete on *.* to user1@localhost Identified by "password1";

如果希望该用户能够在任何机器上登陆mysql,则将localhost改为"%"。

如果你不想user1有密码,可以再打一个命令将密码去掉。

grant select,insert,update,delete on mydb.* to user1@localhost identified by "";

*/

grant all privileges on wpj1105.* to sunxiao@localhost identified by '123'; #all privileges 所有权限

#----------------------------

#-----MySql数据库操作基础-----

#显示数据库

show databases;

#判断是否存在数据库wpj1105,有的话先删除

drop database if exists wpj1105;

#创建数据库

create database wpj1105;

#删除数据库

drop database wpj1105;

#使用该数据库

use wpj1105;

#显示数据库中的表

show tables;

#先判断表是否存在,存在先删除

drop table if exists student;

#创建表

create table student(

id int auto_increment primary key,

name varchar(50),

sex varchar(20),

date varchar(50),

content varchar(100)

)default charset=utf8;

#删除表

drop table student;

#查看表的结构

describe student; #可以简写为desc student;

#插入数据

insert into student values(null,'aa','男','1988-10-2','......');

insert into student values(null,'bb','女','1889-03-6','......');

insert into student values(null,'cc','男','1889-08-8','......');

insert into student values(null,'dd','女','1889-12-8','......');

insert into student values(null,'ee','女','1889-09-6','......');

insert into student values(null,'ff','null','1889-09-6','......');

#查询表中的数据

select * from student;

select id,name from student;

#修改某一条数据

update student set sex='男' where id=4;

#删除数据

delete from student where id=5;

# and 且

select * from student where date>'1988-1-2' and date<'1988-12-1';

# or 或

select * from student where date<'1988-11-2' or date>'1988-12-1';



#between

select * from student where date between '1988-1-2' and '1988-12-1';

#in 查询制定集合内的数据

select * from student where id in (1,3,5);

#排序 asc 升序 desc 降序

select * from student order by id asc;

#分组查询 #聚合函数

select max(id),name,sex from student group by sex;

select min(date) from student;

select avg(id) as '求平均' from student;

select count(*) from student; #统计表中总数

select count(sex) from student; #统计表中性别总数 若有一条数据中sex为空的话,就不予以统计~

select sum(id) from student;

#查询第i条以后到第j条的数据(不包括第i条)

select * from student limit 2,5; #显示3-5条数据

#巩固练习

create table c(

id int primary key auto_increment,

name varchar(10) not null,

sex varchar(50) , #DEFAULT '男' ,

age int unsigned, #不能为负值(如为负值 则默认为0)

sno int unique #不可重复

);

drop table c;

desc c;

insert into c (id,name,sex,age,sno) values (null,'涛哥','男',68,1);

insert into c (id,name,sex,age,sno) values (null,'aa','男',68,2);

insert into c (id,name,sex,age,sno) values (null,'平平','男',35,3);

...

select * from c;

#修改数据

update c set age=66 where id=2;

update c set name='花花',age=21,sex='女' where id=2

delete from c where age=21;

#常用查询语句

select name,age ,id from c

select * from c where age>40 and age<60; #and

select * from c where age<40 or age<60; #or

select * from c where age between 40 and 60 #between

select * from c where age in (30,48,68,99); #in 查询指定集合内的数据

select * from c order by age desc; #order by (asc升序 des降序)

#分组查询

select name,max(age) from c group by sex; #按性别分组查年龄最大值

#聚合函数

select min(age) from c;

select avg(age) as '平均年龄 ' from c;

select count(*) from c; #统计表中数据总数

select sum(age) from c;

#修改表的名字

#格式:alter table tbl_name rename to new_name

alter table c rename to a;



#表结构修改

create table test

(

id int not null auto_increment primary key, #设定主键

name varchar(20) not null default 'NoName', #设定默认值

department_id int not null,

position_id int not null,

unique (department_id,position_id) #设定唯一值

);

#修改表的名字

#格式:alter table tbl_name rename to new_name

alter table test rename to test_rename;

#向表中增加一个字段(列)

#格式:alter table tablename add columnname type;/alter table tablename add(columnname type);

alter table test add columnname varchar(20);

#修改表中某个字段的名字

alter table tablename change columnname newcolumnname type; #修改一个表的字段名

alter table test change name uname varchar(50);

select * from test;

#表position 增加列test

alter table position add(test char(10));

#表position 修改列test

alter table position modify test char(20) not null;

#表position 修改列test 默认值

alter table position alter test set default 'system';

#表position 去掉test 默认值

alter table position alter test drop default;

#表position 去掉列test

alter table position drop column test;

#表depart_pos 删除主键

alter table depart_pos drop primary key;

#表depart_pos 增加主键

alter table depart_pos add primary key PK_depart_pos

(department_id,position_id);

#用文本方式将数据装入数据库表中(例如D:/mysql.txt)

load data local infile "D:/mysql.txt" into table MYTABLE;

#导入.sql文件命令(例如D:/mysql.sql)

source d:/mysql.sql; #或者 /. d:/mysql.sql;

MySQL语法大全整理的自学笔记的更多相关文章

  1. MYSQL 语法大全自己总结的

    mysql语法大全 --------数据链接---------------------数据库服务启动net start mysql --关闭服务net stop mysql --登录 -u,-p后面不 ...

  2. MySQL语法大全_自己整理的学习笔记(MySQL语句 整理二)

    select * from emp; #注释 #--------------------------- #----命令行连接MySql--------- #启动mysql服务器 net start m ...

  3. Oracle和Mysql语法异同整理笔记

    目录 (1) 模糊匹配 (2) 删除数据 (3) 时间函数 (4) 关键字问题 (5) 递归查询 (6) 排序问题 (7) 空值返回0 (8) 取最大值 (9) 列转换函数 (10) 类型转行函数 @ ...

  4. MySQL语法大全

    select * from emp; #注释 #--------------------------- #----命令行连接MySql--------- #启动mysql服务器 net start m ...

  5. mysql基础知识语法汇总整理(二)

    mysql基础知识语法汇总整理(一) insert /*insert*/ insert into 表名(字段列表) values(值列表); --蠕虫复制 (优点:快速复制数据,测试服务器压力) in ...

  6. mysql基础知识语法汇总整理(一)

    mysql基础知识语法汇总整理(二)   连接数据库操作 /*连接mysql*/ mysql -h 地址 -P 端口 -u 用户名 -p 密码 例如: mysql -u root -p **** /* ...

  7. MySQL 资源大全

    干货!MySQL 资源大全 提交 我的留言 加载中 已留言 shlomi-noach 发起维护的 MySQL 资源列表,内容覆盖:分析工具.备份.性能测试.配置.部署.GUI 等. 伯乐在线已在 Gi ...

  8. MySQL 函数大全

    mysql函数大全 对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL,返回NU ...

  9. JS正则表达式大全(整理详细且实用)

    JS正则表达式大全(整理详细且实用).需要的朋友可以过来参考下,希望对大家有所帮助!! 正则表达式中的特殊字符 字符 含意 \ 做为转意,即通常在"\"后面的字符不按原来意义解释, ...

随机推荐

  1. 安装RRDtool 1.4.5

    安装rrdtoolRrdtool安装需要cairo.libxml2.pango库支持,可通过yum安装安装libart_lgpl-devel这个包yum -y install libart_lgpl- ...

  2. iOS-沙盒目录

    ///沙盒路径 + (NSString *)pathDocument{ NSFileManager *fileManager = [[NSFileManager alloc]init]; NSStri ...

  3. BZOJ 4025: 二分图 [线段树CDQ分治 并查集]

    4025: 二分图 题意:加入边,删除边,查询当前图是否为二分图 本来想练lct,然后发现了线段树分治的做法,感觉好厉害. lct做法的核心就是维护删除时间的最大生成树 首先口胡一个分块做法,和hno ...

  4. Newtonsoft.Json 操作 JSON 字符串

    Newtonsoft.Json介绍 在做开发的时候,很多数据交换都是以json格式传输的.而使用Json的时候,我们很多时候会涉及到几个序列化对象的使用:DataContractJsonSeriali ...

  5. 痞子衡随笔:常用的数据传输差错检测技术(1)- 奇偶校验(Parity Check)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家讲的是嵌入式数据传输里的差错检测技术-奇偶校验. 在嵌入式应用里,除了最核心的数据处理外,我们还会经常和数据传输打交道.数据传输需要硬件传输接口 ...

  6. 六、BeautifulSoup4------自动登录网站(手动版)

    每天一个小实例:(按照教学视频上自动登录的网站,很容易就成功了.自已练习登录别的网站,问题不断) 这个自己分析登录boss直聘.我用了一下午的时间,而且还是手动输入验证码,自动识别输入验证码的还没成功 ...

  7. memcached安装与使用详解

    一.memcache的简介 memcache是高速,分布式的内存缓存服务器 php的缓存方式一般可以使用memcache技术和redis技术,其中各有优劣,因不同的情况而选择较为适合的缓存技术,其中m ...

  8. zabbix_server 挂了原因及解决方法(内存溢出)

    14721:20170714:095330.028 [file:dbconfig.c,line:452] zbx_mem_malloc(): out of memory (requested 80 b ...

  9. 脚本启用python虚拟环境

    #!/bin/bash rm -rf /data/website/activities/virtualenvvirtualenv --no-site-packages -p python3 /data ...

  10. Node.js 基础介绍(一)

    Node.js 学习笔记一) 简单介绍--名称 Node.js,平时听到有好几种叫法,node .Node.js.nodejs ,但是比较正式的称呼还是"Node.js",由于它是 ...