- 浏览: 209795 次
- 性别:
- 来自: 哈尔滨
文章分类
- 全部博客 (267)
- java.lang (8)
- 问题汇总 (21)
- 异常记录 (20)
- 功能实现 (19)
- 面试总结 (25)
- 技巧总结 (8)
- 常用代码 (4)
- 编程习惯 (3)
- 编码规则 (3)
- java.util (10)
- java.io (1)
- JavaWeb (9)
- MySQL (16)
- SVN (3)
- MyBatis (11)
- Velocity (7)
- 其他知识 (10)
- 人生哲理 (1)
- 人生故事 (1)
- 自我感悟 (1)
- shiro (3)
- 基础知识 (0)
- 问题总结 (1)
- Spring 标签 (1)
- Spring (3)
- 点滴生活 (1)
- DOS (1)
- CAS (4)
- Linux (9)
- Storm (6)
- Shell (1)
- regex (1)
- Collection (4)
- poi (1)
- 经典语句 (1)
- NIO (5)
- concurrent (14)
- RPC (1)
- zookeeper (3)
- 待整理 (2)
- Hadoop (9)
- RabbitMq (2)
- flume (1)
- hive (7)
- hbase (4)
- kafka (1)
- scala (1)
- GC (0)
- java.util.concurrent.atomic (1)
- java.lang.ref (6)
- JVM (2)
- algorithm (1)
- conception (1)
- java key word (1)
- sun.misc (1)
最新评论
常用数据表操作:
虽然有DBA的存在,但PD(program designer)仍然需要需要知道SQL常用操作
================================================================================================================================================
查询表中注释信息,该操作可通过工具完成,但没有在控制窗口显示直观
================================================================================================================================================
或
================================================================================================================================================
建表
================================================================================================================================================
1.通过工具添加列名,数据类型,数据长度,
是否可空(若空给予默认值),
主键(bigint类型主键,自增,varchar类型不自增),
添加注释(一定不要忘记,注释与po类型中的注释、common-util常量值 保持一致,以免误会)
字符集 :utf-8
排序规则:utf8_general_ci
注意事项:
列名:
单词加下划线形式 如:impl_product_data
不要出现大写字母,查询操作时不方便
举例:
DBA:删除操作不需要添加
comment 注释
若该列为空不用显示声明 为 null 可缺省 ,默认为null,若为空一定要给出默认值
另外,建立表时,若非特殊字段都设为可空
2.建表语句
执行命令:
即可获得
================================================================================================================================================
修改
================================================================================================================================================
1.添加列
语法:
举例:
2.删除列
语法:
举例:
3.修改列
语法:
若有comment,执行上面的命令会去掉原有的注释
该操作可避免去掉comment
建议:
修改列名称时语句都要带有comment '',这样保险一点
3.1 设置默认值
举例:
3.2 修改数据类型
举例:
3.3 更改列名称
举例:
3.4 添加字段
(1)说明在哪个字段后
举例:
(2)DBA要求:
出于后期数据同步考虑,Mysql添加字段请不要手动指定顺序,默认加在最后一列。
错误sql:
正确sql:
3,5 去掉默认值
举例:
================================================================================================================================================
插入
================================================================================================================================================
插入数据 要先将表锁定 避免同时操作
================================================================================================================================================
其他
================================================================================================================================================
1.查看表结构
2.给表更名
语法:
举例:
3.修改插入操作的ID自增值
设置 插入数据表中的数据的主键id从几开始自增
注:若一不小心,在po.setUid(XXX) 一不小心变成了 po.setId(XXX) 即
原本想修改某个ID值却变成了修改主键的值,主键自增啊,万一主键从1自增到那个值怎么办
会不会发生冲突,数据表异常
答:不会,一定主键的值发生变化,那么 AUTO_INCREMENT 就会发生变化,下一个值从该主键+1开始添加,即新添加的数据会从当前最大的ID往下执行插入
4.查询表中存在的重复数据
虽然有DBA的存在,但PD(program designer)仍然需要需要知道SQL常用操作
================================================================================================================================================
查询表中注释信息,该操作可通过工具完成,但没有在控制窗口显示直观
================================================================================================================================================
show full columns from table_name ;
或
show full fields from test ;
================================================================================================================================================
建表
================================================================================================================================================
1.通过工具添加列名,数据类型,数据长度,
是否可空(若空给予默认值),
主键(bigint类型主键,自增,varchar类型不自增),
添加注释(一定不要忘记,注释与po类型中的注释、common-util常量值 保持一致,以免误会)
字符集 :utf-8
排序规则:utf8_general_ci
注意事项:
列名:
单词加下划线形式 如:impl_product_data
不要出现大写字母,查询操作时不方便
举例:
DBA:删除操作不需要添加
DROP TABLE IF EXISTS `fin_biz_exception`;
CREATE TABLE `fin_biz_exception` ( `fin_ext_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键', `biz_param1` varchar(50) DEFAULT '' COMMENT '业务参数1', `biz_param2` varchar(50) DEFAULT '' COMMENT '业务参数2', `biz_type` tinyint(4) NOT NULL COMMENT '业务类型', `exception` varchar(200) DEFAULT '' COMMENT '异常信息', `remark` varchar(50) DEFAULT '' COMMENT '备注', `create_time` datetime DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (`fin_ext_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
comment 注释
若该列为空不用显示声明 为 null 可缺省 ,默认为null,若为空一定要给出默认值
另外,建立表时,若非特殊字段都设为可空
2.建表语句
执行命令:
show create table talbe_name ;
即可获得
================================================================================================================================================
修改
================================================================================================================================================
1.添加列
语法:
alter table table_name add column col_name type null default null commont '' ;
举例:
alter table pet add 'weight' int null default null comment '重量';
2.删除列
语法:
alter table table_name drop column col_name
举例:
alter table student drop column weight ;
3.修改列
语法:
alter table tbl_name modify column col_name type
若有comment,执行上面的命令会去掉原有的注释
alter table tbl_name change column old_col_name col_name type
该操作可避免去掉comment
建议:
修改列名称时语句都要带有comment '',这样保险一点
3.1 设置默认值
举例:
alter table usr_accounts_bak change id id bigint(20) null default null COMMENT '主键' ;
3.2 修改数据类型
举例:
ALTER TABLE ord_order_snapshot_item CHANGE `attr_name` `attr_name` VARCHAR(1000) NULL COMMENT '属性name';
3.3 更改列名称
举例:
alter table pet change weight wei;
3.4 添加字段
(1)说明在哪个字段后
举例:
alter table fin_order_main add column order_id bigint comment '订单ID' after fin_type ;
(2)DBA要求:
出于后期数据同步考虑,Mysql添加字段请不要手动指定顺序,默认加在最后一列。
错误sql:
ALTER TABLE `account` ADD COLUMN `nickname` VARCHAR(50) NULL DEFAULT NULL AFTER `username`;
正确sql:
ALTER TABLE `account` ADD COLUMN `nickname` VARCHAR(50) NULL DEFAULT NULL;
3,5 去掉默认值
举例:
ALTER TABLE product_sku ALTER retail_price DROP DEFAULT;
================================================================================================================================================
插入
================================================================================================================================================
LOCK TABLES `usr_testuser` WRITE; INSERT INTO `usr_testuser` VALUES (457),(459),(460),(461),(462),(463),(464),(465),(466),(467),(479),(485),(486); UNLOCK TABLES;
插入数据 要先将表锁定 避免同时操作
================================================================================================================================================
其他
================================================================================================================================================
1.查看表结构
desc table_name
2.给表更名
语法:
alter table tbl_name rename new_tbl
举例:
alter table pet rename animal;
3.修改插入操作的ID自增值
设置 插入数据表中的数据的主键id从几开始自增
alter table test AUTO_INCREMENT = 2 ;
注:若一不小心,在po.setUid(XXX) 一不小心变成了 po.setId(XXX) 即
原本想修改某个ID值却变成了修改主键的值,主键自增啊,万一主键从1自增到那个值怎么办
会不会发生冲突,数据表异常
答:不会,一定主键的值发生变化,那么 AUTO_INCREMENT 就会发生变化,下一个值从该主键+1开始添加,即新添加的数据会从当前最大的ID往下执行插入
4.查询表中存在的重复数据
-- 查询表中重复数据,列名称 select col001,sum(1) as ufo from lhsjb group by col001 having sum(1) > 1
发表评论
-
索引相关(二)
2017-11-05 21:13 497索引相关 一、InnoDB 与 MyISAM 对比 存储引 ... -
SQL优化示例
2017-11-03 15:34 479一、distinct 、 union all 、 union ... -
索引相关
2017-11-02 20:42 514一、索引分类 1.单列索引:一个索引包含一列,一个表可以包含 ... -
检索指定时间范围内的数据与预期不一致
2017-10-30 20:38 566问题背景: 在不同日期内进行不同的业务逻辑,在测试环境进行模拟 ... -
存储引擎InnoDB与MyISAM区别
2017-10-29 17:26 377存储引擎 一、总结 名称MyISAMInnoDB事务不支持支 ... -
常用索引优化
2017-10-29 16:07 385唯一索引 联合索引 索引方式:BTREE 1.order b ... -
统计每天的数据
2017-10-10 21:23 543需求:按天统计数据 分析:create_time 为 dat ... -
DDL - CREATE
2017-08-05 06:10 483一、基本语句 CREATE TABLE `data_te ... -
数据统计
2016-06-12 17:04 556按照时间统计各个阶段的数据数量 1.统计每个月卖家的注册数量 ... -
1030 Got error 28 from storage engine
2016-05-24 22:25 1318现象:调试程序过程中,突然报错,显示数据检索失败,数据库连接超 ... -
批量数据修改
2015-08-19 15:39 439问题:增加新功能,需要初始化数据,执行update、inser ... -
mysql 如何查询出某字段的值不为空的数据
2015-06-30 19:05 2904问题:查询原有某类数据的数量,对比发现,新旧数据的差距是新插入 ... -
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException
2015-05-21 15:38 840异常: com.mysql.jdbc.exceptions.j ... -
You can't specify target table <tbl> for update in FROM clause
2015-04-23 10:50 730[size=large][/size] mysql中You ... -
MySQL-删除除id外其他内容都相同的数据
2015-04-23 09:24 1096删除除id外其他内容都相同的数据 难点:自己不能删除自己,要 ...
相关推荐
### MySQL常用命令总结 本文将基于提供的部分内容对MySQL的基本操作命令进行详细解析,这些命令涵盖了数据库及表的基本管理,如创建、查询、更新等。掌握这些命令有助于更好地管理和操作MySQL数据库。 #### 一、...
MySQL常用命令总结 MySQL常用命令总结
mysql MySql常用命令总结
### MySQL常用命令总结 #### 一、连接MySQL 在MySQL中,通过命令行连接到数据库是一种常见且实用的方法。连接MySQL的基本格式为: ```sql mysql -h 主机地址 -u 用户名 -p 用户密码 ``` - **连接到本机上的MySQL...
### MySQL常用命令精要解析 #### 一、MySQL基础命令概览 ...以上就是MySQL常用命令的详细介绍,涵盖了安装、管理、用户权限、数据操作以及备份恢复等关键方面,希望能帮助您更深入地理解和应用MySQL。
在windows中MySql以服务形式存在,在使用前应确保此服务已经启动,未启动可用net start mysql命令启动。而Linux中启动时可用“/etc/rc.d/init.d/mysqld start”命令,注意启动者应具有管理员权限。 刚安装好的MySql...
以下是一些MySQL常用命令的详细说明: 1. **创建数据库**: - `CREATE DATABASE`: 用于创建新的数据库。例如,`CREATE DATABASE mydb;` 创建名为`mydb`的数据库。 2. **选择数据库**: - `USE`: 用于切换到指定...
以下是关于MySQL常用命令的一些详细解释: 1. **连接MySQL**: - 使用`mysql -u<username> -p`命令可以连接到本地MySQL服务器,其中`<username>`是你的用户名。如果你的密码为空,直接按回车即可。例如,`mysql -u...
以下是一些关于操作MySQL数据库的常用命令的详细说明: 1. **连接MySQL**:使用`mysql -u 用户名 -p`命令可以连接到MySQL服务器,其中`-u`指定用户名,`-p`会提示输入密码。例如,连接名为root的用户,命令是`mysql...
对于MySQL 8.0,了解并熟练掌握常用命令对于数据库管理至关重要。以下是一些关键的MySQL命令及其详细解释: 1. **登录数据库**: 使用`mysql -u root -p`命令登录MySQL服务器,其中`root`是用户名,系统会提示输入...
为了高效管理和操作MySql数据库,常用的一些命令是必须掌握的知识点。从文件内容中提取出的关键命令可以分为以下几类:数据库和表的操作、数据的导入导出、权限管理以及服务控制。 ### 数据库和表的操作 1. **显示...