- 浏览: 3315925 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (567)
- Web前端-html/表单 (19)
- Web前端-CSS (24)
- Web前端-CSS框架 (4)
- Web前端-JS语言核心 (50)
- Web前端-JS客户端 (26)
- nodejs生态+grunt (10)
- seajs和requirejs (9)
- backbone等框架 (7)
- 模板基础 (7)
- Web前端-deps(不改动) (6)
- Web前端-component (10)
- Web前端-jquery-plugin (13)
- 浏览器兼容性 (6)
- Web前端-使用jQuery (25)
- Web前端-使用jqueryui (6)
- Web前端-性能优化 (3)
- Web协议-HTTP (6)
- ExtJS (13)
- PHP (22)
- PHP面向对象 (4)
- PHP扩展-SOAP (6)
- PHP扩展-curl (4)
- PHP与HTML(导出) (5)
- PHP扩展-综合 (7)
- mysql基础应用 (18)
- 技术心情 (18)
- 算法和面试题 (17)
- 工具(开发)使用 (36)
- memcached原理 (2)
- session和cookie (4)
- UML (2)
- Web前端_FusionCharts (5)
- Web前端_Flex (4)
- Web前端_JSP (3)
- JavaSE (10)
- JavaEE (4)
- tomcat (2)
- Servlet开发 (3)
- Spring开发 (1)
- REST相关 (2)
- 大访问量、高并发 (2)
- 网络编程 (1)
- YII (21)
- linux命令和内核 (12)
- yii与数据库 (10)
- yii与表单 (12)
- yii view层 (1)
- perl (7)
- yii扩展 (7)
- shell (4)
- photoshop (7)
- 视觉设计 (2)
- 我关注的名人在路上 (4)
- 1-自学能力 (1)
- 2-人际沟通能力 (3)
- 3-职业规划能力 (7)
- 4-项目管理能力 (2)
- python (3)
- django (4)
- Mysql高级应用 (6)
- prototype.js (4)
- Web系统安全 (1)
- Web前端-mobile (2)
- egret (6)
- jQuery源码分析 (5)
- fis (4)
最新评论
-
yzq21056563:
感谢作者分享~请教下,http://www.lisa33xia ...
CSS基础:text-overflow:ellipsis溢出文本 -
u012206458:
$.ajax的error,complete,success方法 -
DEMONU:
谢谢,虽然不能给你赞助,但是要给你顶
mysql中key 、primary key 、unique key 与index区别 -
njupt_tolmes:
阿凡达阿凡达阿凡达阿凡达阿凡达阿凡达阿凡达阿凡达阿凡达阿滕庆亚 ...
CSS基础:text-overflow:ellipsis溢出文本 -
zenmshuo:
用过SpreadJS,也包含数据可视化的图表
推荐几个web中常用js图表插件
作者:zccst
2014-05-18 创建新表各类型模板
CREATE TABLE `aaa` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(32) default NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
)ENGINE=InnoDB DEFAULT CHARSET utf8;
特殊情况
1,两个主键
primary key (id,name)
2,加唯一键约束
UNIQUE KEY `name` (`name`)
2014-05-17 给新mysql数据库root用户设置新密码(改默认密码)
use mysql;//少了这个也不行
update user set password=PASSWORD('123456') where user='root';
flush privileges;
一、数据库的基本操作
create database xx
show databases use dbName;
drop database xx
注:只有use databaseName;才能进行该数据库里的表操作,和表记录操作。
二、对数据库表本身的一些操作
1,操作表(整体)
查看所有表:show tables
查看所有表状态:show tables status
查看表结构:desc tbl_name
修改表名: alter table t_book rename to bbb;
删除表: drop table xxxx(注:删除多个表时请参考另一篇文章)
【一次删除多个表时:drop table `x_abc1`,`x_abc2`,`x_abc3`】
创建表: create table ...(最重要,数据库设计)
mysql> create table fail_server_suit(
-> id INTEGER UNSIGNED auto_increment primary key,
-> suit_name varchar(30),
-> cnt int(20) default '0',
-> percent double(3,2) default null
-> )engine=InnoDB default charset=utf8;
需要注意的是mysql各种数据类型。
(1)关于时间
datetime 日期和时间的组合。支持‘1000-01-01 00:00:00‘到‘9999-12-31 23:59:59‘
timestamp 时间戳。如果多个timestamp,第一个是时间戳,记录更新时更新。
另外,timestamp以UTC格式保存( it stores the number of milliseconds)
时区转化 ,存储时对当前的时区进行转换,检索时再转换回当前的时区。
(2)关于大数据存储longblob
mysql配置文件my*.cnf默认max_allowed_packet = 1M,但可修改为8M。
2,操作表的某一列
ALTER TABLE:添加,修改,删除表的列,约束等表的定义。
添加列:alter table 表名 add column 列名 varchar(30);
删除列:alter table 表名 drop column 列名;
修改列名: alter table tbl_name change column update_at create_at timestamp;
修改列属性:alter table t_book modify column_name varchar(22);
3,重要操作
查看已定义的表。如查看已定义表的外键情况。(可能在删除表数据前需要)show create table xxxx;
三、导入导出
1,导入导出sql脚本
格式:mysqldump -u 用户名 -p 数据库名 > 导出的文件名
例:mysqldump -uroot -p123456 new_rss > new_rss07.sql
导入sql脚本:改变箭头即可。
mysqldump --help
几个比较实用的选项为:
-c, --complete-insert Use complete insert statements.
--default-character-set=name Set the default character set.
--fields-terminated-by=name Fields in the textfile are terminated by ...
--ignore-table=name
-n, --no-create-db
-t, --no-create-info
-d, --no-data No row information.
--tables Overrides option --databases (-B).
-w, --where=name Dump only selected records; QUOTES mandatory!
例子,导出数据库中的某个表(不是全部表)
2,导出查询结果到文本
select * from idc into outfile 'E:/sql/idc.txt';
这种情况每次会创建一个新的文件。
还有追加的方式:>。(即select * from idc into > 'E:/sql/idc.txt';)
四、单表的基本操作
1,增删查改
(1)插入记录
a. insert into
b. select insert into
(2)删除记录
delete from MYTABLE where id = xx;
清空表:delete from MYTABLE;
truncate table tablename 其中table是可选的。
如果要删除表中的部分记录,只能使用delete语句。
(3)更新记录
update tbl_name set column1 = xx, column2 = yy where id = zz;
(4)查询记录
select * from tbl_name where id = xx;
关于时间比较
select * from tbl_name where created_at > '2012-01-09';
表面上大于'2012-01-09',应该只出现'2012-01-10'及以后的结果,实际不是。
批注:由于created_at是timestamp或datetime,所以'2012-01-09'会变为'2012-01-09 00:00:00',然后再作比较。所以凡是大于'2012-01-09 00:00:00'都是符合条件的,所以类似'2012-01-09 10:00:00'会出现在结果列。
注:DELETE, 删除表的记录。DROP, 删除数据表或数据库。
2,select的常见用法
(1)单表
a,选择若干列
b,选择若干元组
1,消除重复行
2,查询符合条件的元组(比较运算符,逻辑运算符,between and,having,like,in,is null,exist)
3,ORDER BY
4,聚集函数
5,GROUP BY
(2)多表
a,等值与非等值连接查询
b,自身连接
c,外连接
d,符合条件连接
(3)嵌套查询
a,带IN
b,带比较运算符的子查询
c,带ANY(SOME)或ALL的子查询
d,带EXISTS的子查询
(4)集合查询
五、多表操作
1,内连接/外连接/交叉连接
内连接:分等值连接,非等值连接,自然连接
外连接:分左连接、右连接、全连接
交叉连接:
详情可参考:
http://zccst.iteye.com/admin/blogs/1486751
2,嵌套
六、权限管理
1,授权
例如,grant select,insert,update,delete on *.* to root@'%' Identified by "654123";
解释:
(1)*.* 前面的星表示数据库名称,后面的星表示数据库表。
(2)root@'%' 前面表示用户,后面'%'表示允许所有IP访问并重启mysql,此外,还可以是'localhost'等。
再例如,
(1). GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
(2). FLUSH PRIVILEGES;
2014-05-18 创建新表各类型模板
CREATE TABLE `aaa` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(32) default NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
)ENGINE=InnoDB DEFAULT CHARSET utf8;
特殊情况
1,两个主键
primary key (id,name)
2,加唯一键约束
UNIQUE KEY `name` (`name`)
2014-05-17 给新mysql数据库root用户设置新密码(改默认密码)
use mysql;//少了这个也不行
update user set password=PASSWORD('123456') where user='root';
flush privileges;
一、数据库的基本操作
create database xx
show databases use dbName;
drop database xx
注:只有use databaseName;才能进行该数据库里的表操作,和表记录操作。
二、对数据库表本身的一些操作
1,操作表(整体)
查看所有表:show tables
查看所有表状态:show tables status
查看表结构:desc tbl_name
修改表名: alter table t_book rename to bbb;
删除表: drop table xxxx(注:删除多个表时请参考另一篇文章)
【一次删除多个表时:drop table `x_abc1`,`x_abc2`,`x_abc3`】
创建表: create table ...(最重要,数据库设计)
mysql> create table fail_server_suit(
-> id INTEGER UNSIGNED auto_increment primary key,
-> suit_name varchar(30),
-> cnt int(20) default '0',
-> percent double(3,2) default null
-> )engine=InnoDB default charset=utf8;
需要注意的是mysql各种数据类型。
(1)关于时间
datetime 日期和时间的组合。支持‘1000-01-01 00:00:00‘到‘9999-12-31 23:59:59‘
timestamp 时间戳。如果多个timestamp,第一个是时间戳,记录更新时更新。
另外,timestamp以UTC格式保存( it stores the number of milliseconds)
时区转化 ,存储时对当前的时区进行转换,检索时再转换回当前的时区。
(2)关于大数据存储longblob
mysql配置文件my*.cnf默认max_allowed_packet = 1M,但可修改为8M。
2,操作表的某一列
ALTER TABLE:添加,修改,删除表的列,约束等表的定义。
添加列:alter table 表名 add column 列名 varchar(30);
删除列:alter table 表名 drop column 列名;
修改列名: alter table tbl_name change column update_at create_at timestamp;
修改列属性:alter table t_book modify column_name varchar(22);
3,重要操作
查看已定义的表。如查看已定义表的外键情况。(可能在删除表数据前需要)show create table xxxx;
三、导入导出
1,导入导出sql脚本
格式:mysqldump -u 用户名 -p 数据库名 > 导出的文件名
例:mysqldump -uroot -p123456 new_rss > new_rss07.sql
导入sql脚本:改变箭头即可。
mysqldump --help
几个比较实用的选项为:
-c, --complete-insert Use complete insert statements.
--default-character-set=name Set the default character set.
--fields-terminated-by=name Fields in the textfile are terminated by ...
--ignore-table=name
-n, --no-create-db
-t, --no-create-info
-d, --no-data No row information.
--tables Overrides option --databases (-B).
-w, --where=name Dump only selected records; QUOTES mandatory!
例子,导出数据库中的某个表(不是全部表)
2,导出查询结果到文本
select * from idc into outfile 'E:/sql/idc.txt';
这种情况每次会创建一个新的文件。
还有追加的方式:>。(即select * from idc into > 'E:/sql/idc.txt';)
四、单表的基本操作
1,增删查改
(1)插入记录
a. insert into
--注:如果是default current timestamp,则时间字段由系统自动填写。如果是datetime,则为now(),不是'now()'; insert into tbl_name (column1, column2, ..., columnN) values ( value1, value2, ..., valueN); insert into user(name, age) values ('姚明', 25), ('乔布斯', 50), ('火星人', 250), ('太阳人', 2000); //插入多条记录【注:这个只适合于mysql】
b. select insert into
//指定列: INSERT INTO `suit_type`(suit) SELECT distinct suit FROM aos_data_201112 where date='2011-12-27'; //全部列: INSERT INTO `a` SELECT * FROM b; //前提两者数据字段完全一致。
(2)删除记录
delete from MYTABLE where id = xx;
清空表:delete from MYTABLE;
truncate table tablename 其中table是可选的。
如果要删除表中的部分记录,只能使用delete语句。
(3)更新记录
update tbl_name set column1 = xx, column2 = yy where id = zz;
(4)查询记录
select * from tbl_name where id = xx;
关于时间比较
select * from tbl_name where created_at > '2012-01-09';
表面上大于'2012-01-09',应该只出现'2012-01-10'及以后的结果,实际不是。
批注:由于created_at是timestamp或datetime,所以'2012-01-09'会变为'2012-01-09 00:00:00',然后再作比较。所以凡是大于'2012-01-09 00:00:00'都是符合条件的,所以类似'2012-01-09 10:00:00'会出现在结果列。
注:DELETE, 删除表的记录。DROP, 删除数据表或数据库。
2,select的常见用法
(1)单表
a,选择若干列
b,选择若干元组
1,消除重复行
2,查询符合条件的元组(比较运算符,逻辑运算符,between and,having,like,in,is null,exist)
3,ORDER BY
4,聚集函数
5,GROUP BY
(2)多表
a,等值与非等值连接查询
b,自身连接
c,外连接
d,符合条件连接
(3)嵌套查询
a,带IN
b,带比较运算符的子查询
c,带ANY(SOME)或ALL的子查询
d,带EXISTS的子查询
(4)集合查询
五、多表操作
1,内连接/外连接/交叉连接
内连接:分等值连接,非等值连接,自然连接
外连接:分左连接、右连接、全连接
交叉连接:
详情可参考:
http://zccst.iteye.com/admin/blogs/1486751
2,嵌套
六、权限管理
1,授权
例如,grant select,insert,update,delete on *.* to root@'%' Identified by "654123";
解释:
(1)*.* 前面的星表示数据库名称,后面的星表示数据库表。
(2)root@'%' 前面表示用户,后面'%'表示允许所有IP访问并重启mysql,此外,还可以是'localhost'等。
再例如,
(1). GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
(2). FLUSH PRIVILEGES;
发表评论
-
MySQL创建用户与授权
2013-08-29 21:43 1231zccst转载 一, 创建用户: 命令:CR ... -
mysql导入/导出命令
2013-05-15 15:52 1092作者:zccst 最常用: 导出数据库为文件 mysqld ... -
运行中的mysql状态查看
2013-02-22 14:19 1675zccst整理 对正在运行的 ... -
mysql导出的几种办法
2012-12-24 16:29 7676作者:zccst 一、使用mysqldump导出 my ... -
强大的alter
2012-11-14 22:28 1252作者:zccst alter的主要作用是修改已经建立的表结构。 ... -
mysql replace into用法详细说明
2012-10-23 17:42 1772zccst转载 mysql replace into ... -
mysql中key 、primary key 、unique key 与index区别
2012-10-12 12:15 262359作者:zccst 一、key与pri ... -
mysql日期相关函数
2012-06-15 15:27 1718作者:zccst 日期函数 date_format(crea ... -
mysql安全之sql注入
2012-04-28 18:42 1160zccst整理 如何避免? 1,使用mysql_escap ... -
MySQL索引类型一览 让MySQL高效运行起来
2012-04-27 15:29 1171zccst转载 批注:学习mysql那么久,今天终于有点更上 ... -
mysql 多表连接 left join 等
2012-04-14 23:34 34476作者:zccst 一、 理论 ... -
mysql 删除全部表
2012-02-27 16:25 26066作者:zccst 方式一:手工方式 1,直接操作数据库 先 ... -
mysql insert时几个操作DELAYED 、IGNORE、ON DUPLICATE KEY UPDATE的区别
2012-02-07 16:06 3433mysql insert时几个操作DELAYED 、IGNOR ... -
MySQL 数据类型 详解
2012-01-18 15:28 1359zccst整理 批注:mysql数据类型分为4类,与C语言教 ... -
mysql函数初步
2011-12-12 17:50 1085一、日期函数 日期函数较多 比如对timestamp求月份,可 ... -
mysql警告和错误解决办法集合
2011-10-31 11:33 1224一、在创建mysql时,查看警告详情 在create语句执行之 ... -
数据库关于group by 两个或以上条件的分析
2011-08-25 12:58 59020首先group by 的简单说明: group by 一 ...
相关推荐
### MySQL常用命令详解 在IT领域,MySQL作为一款广泛使用的开源关系型数据库管理系统,其重要性不言而喻。无论是初学者还是资深开发者,掌握MySQL的常用命令都是必不可少的技能。以下将对“MYSQL常用命令教程”中的...
### MySQL常用命令详解 #### 一、连接与断开MySQL **命令格式:** ``` mysql -h [主机地址] -u [用户名] -p [密码] ``` **示例:** 1. **本地连接MySQL服务:** ```bash mysql -uroot -p ``` 输入此命令后,...
根据提供的标题、描述以及部分内容,本文将详细解析MySQL数据库中的常用命令,并且涵盖数据库的创建、管理、查询、更新等核心操作。 ### MySQL 常用命令概览 #### 启动与停止 MySQL 服务 - **启动 MySQL 服务**: ...
以上仅是MySQL常用命令的一部分,实际操作中还有更多高级功能,如视图、存储过程、触发器、索引、事务处理等。通过深入学习和实践,你可以更高效地管理和维护MySQL数据库。在“MySQL常用命令汇总.pdf”文件中,应有...
MySQL 常用命令 MySQL 是一个流行的开源关系数据库管理系统,它提供了许多实用的命令来管理和维护数据库。在本资源中,我们将总结一些常用的 MySQL 命令,涵盖数据库创建、用户管理、数据备份和恢复、查询执行等...
MySQL常用命令总结 MySQL常用命令总结
### MySQL常用命令总结 本文将基于提供的部分内容对MySQL的基本操作命令进行详细解析,这些命令涵盖了数据库及表的基本管理,如创建、查询、更新等。掌握这些命令有助于更好地管理和操作MySQL数据库。 #### 一、...
### MySQL常用命令详解 #### 启动MySQL服务器 在启动MySQL服务器方面,有两种常见的方法: 1. **使用winmysqladmin工具**:这是一个图形化的工具,适用于Windows系统。如果你的计算机在启动时已经设置了自动运行...
MySQL常用命令集锦--初级DBA MySQL是当前最流行的开源关系数据库管理系统,本文将总结一些常用的MySQL命令,适合初级DBA学习和工作。 一、MySQL服务的启动和停止 MySQL服务的启动和停止命令如下: * ...
MySQL是世界上最受欢迎的关系型...通过学习这些MySQL常用命令,你可以对数据库进行基本的创建、查询、修改和删除操作,同时了解如何更高效地管理和维护数据库。在实际工作中,熟练掌握这些命令能够极大地提升工作效率。
以下是一些关于MySQL常用命令的详细说明: 1. **创建和管理数据库**: - `create database name;` 用于创建一个新的数据库,name是数据库的名称。 - `use databasename;` 用于切换到指定的数据库。 - `drop ...
MySQL常用命令---创建数据库创建表 MySQL是最流行的开源关系型数据库管理系统,广泛应用于Web应用开发、企业数据存储、数据分析等领域。作为一名IT从业者,熟悉MySQL常用命令是必不可少的技能之一。本文档将详细...
### MySQL常用命令详解 在IT领域,特别是数据库管理与开发工作中,熟练掌握SQL语言和具体的数据库管理系统(如MySQL)的命令至关重要。以下是对标题“MySQL常用命令大全”及其描述“MySQL常用命令,帮助你快速掌握...
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational ...此文件是MySQL常用命令速查手册
MySQL 常用命令大全 本文档旨在总结 MySQL 的常用命令,旨在帮助开发者快速掌握 MySQL 的基本操作命令。下面将详细介绍 MySQL 的基本命令,包括启动 MySQL、数据库操作、表操作、数据操作等方面。 一、命令行指令 ...
### MySQL常用命令精要解析 #### 一、MySQL基础命令概览 MySQL是全球最流行的开源关系型数据库管理系统之一,其高效稳定、功能全面而深受广大开发者喜爱。掌握MySQL的基本命令是进行数据库管理与开发的基础。 ###...
以下是对标题和描述中提到的一些MySQL常用命令的详细解释: 1. **导出数据库和表** - `mysqldump` 是用于备份和导出数据库或表的数据及结构的工具。 - **导出整个数据库**:`mysqldump -u 用户名 -p --default-...