Mysql 操作
2015-06-02 11:21
513 查看
查看表结构
增加字段
修改字段类型
删除字段
范围内查找
表连接
str to date
sum使用
更新字段
MySQL 150 error
1, 两个字段的类型或者大小不严格匹配,例如,如果一个是INT(10), 那么外键也必须设置成INT(10), 而不是 INT(11) 也不能是 TINYINT. 你得使用 SHOW 命令来查看字段的大小,因为一些查询浏览器有时候把 int(10) 和int(11) 都显示为integer。另外,你还必须确定两个字段是否一个为 SIGNED,而另一个又是UNSIGNED, 这两字段必须严格地一致匹配。
2,外键定义服从下列情况:
- 所有tables必须是InnoDB型,它们不能是临时表。
- 在引用表中,必须有一个索引,外键列以同样的顺序被列在其中作为第一列。这样一个索引如果不存在,它必须在引用表里被自动创建。
- 在引用表中,必须有一个索引,被引用的列以同样的顺序被列在其中作为第一列。
- 不支持对外键列的索引前缀。这样的后果之一是BLOB和TEXT列不被包括在一个外键中,这是因为对这些列的索引必须总是包含一个前缀长度。
- 如果CONSTRAINTsymbol被给出,它在数据库里必须是唯一的。如果它没有被给出,InnoDB自动创建这个名字。
MySQL 数据迁移
下载导出数据脚本
导入数据命令 mysql -h hostname -u 用户名 -p 密码 -D 数据库名 < 文件名
show columns from table_name from db_name;
增加字段
alter table suplychain_flashsale_orderdetail add column inferior_quantity int(11) not Null;
修改字段类型
ALTER TABLE table_name MODIFY COLUMN created datetime;
删除字段
ALTER TABLE table_name drop column ##**;
范围内查找
select product_id,sale_time,ding_huo_num,goods_out_num from supply_chain_stats_order where product_id in ( select outer_id from shop_items_product where outer_id='802055202') group by product_id;
表连接
select A.id,A.name,B.num from table1 as A left join table2 as B on A.id=B.id
str to date
select id,merge_trade_id,pay_time from shop_trades_mergeorder pay_time>=str_to_date("2015-05-25 0:0:0","%Y-%m-%d %H:%i:%s");
sum使用
select sum(if(status='1',num,0)) from table group by outer_id #求出状态为1的num的和
更新字段
update shop_items_product set sale_time="2015-09-03" where sale_time="2015-09-04";
MySQL 150 error
1, 两个字段的类型或者大小不严格匹配,例如,如果一个是INT(10), 那么外键也必须设置成INT(10), 而不是 INT(11) 也不能是 TINYINT. 你得使用 SHOW 命令来查看字段的大小,因为一些查询浏览器有时候把 int(10) 和int(11) 都显示为integer。另外,你还必须确定两个字段是否一个为 SIGNED,而另一个又是UNSIGNED, 这两字段必须严格地一致匹配。
2,外键定义服从下列情况:
- 所有tables必须是InnoDB型,它们不能是临时表。
- 在引用表中,必须有一个索引,外键列以同样的顺序被列在其中作为第一列。这样一个索引如果不存在,它必须在引用表里被自动创建。
- 在引用表中,必须有一个索引,被引用的列以同样的顺序被列在其中作为第一列。
- 不支持对外键列的索引前缀。这样的后果之一是BLOB和TEXT列不被包括在一个外键中,这是因为对这些列的索引必须总是包含一个前缀长度。
- 如果CONSTRAINTsymbol被给出,它在数据库里必须是唯一的。如果它没有被给出,InnoDB自动创建这个名字。
MySQL 数据迁移
下载导出数据脚本
导入数据命令 mysql -h hostname -u 用户名 -p 密码 -D 数据库名 < 文件名
相关文章推荐
- MySQL中的integer 数据类型
- mysql中int、bigint、smallint 和 tinyint的区别与长度
- mysql load data 导出、导入 csv
- source命令执行SQL脚本文件
- linux下mysql添加用户
- mysql procedure
- mysql触发器
- MySQL 备份和恢复策略
- mac下安装mysql(转载)
- mysql 修改编码 Linux/Mac/Unix/通用(杜绝修改后无法启动的情况!)
- MySQL数据的导出、导入(mysql内部命令:mysqldump、mysql)
- mysql数据行转列
- Linux下修改MySQL编码的方法
- MySQL Server 日志
- MySQL 安全事宜
- MySQL 备份与恢复
- MySQL 优化
- MySQL 数据类型
- Facebook's New Real-time Messaging System: HBase to Store 135+ Billion Messages a Month