mysql

安装

sudo apt-get install mysql

命令行操作

登录

mysql -u用户名 -p密码 -h数据库地址(ip) 数据库名称

注意:尽量不要在-p后直接跟密码,否则其他人很容易通过查阅命令行历史记录(比如,history命令)看到你的密码。

SQL参考

MySQL参考

常见数据类型

integer(11) 11位字节的整数
tinyint(1)
bigint(20)
decimal(10,2) 小数
varchar(20) 最长为20位字节的可变字符串
char(20) 最长为20位字节的定长字符串(定长指的是存储空间定长)
text 文本,用于存大量不固定长度的文本信息
blob 二级制信息

常见函数

length(str) 字符串的长度
trim(str) 去掉字符串前后的空格
substring(str,1) 获取子串
convert(str using gbk) 将字符串转化为gbk编码
reverse(str) 倒序

增删改查

insert into product (sku,name) values ('123456','productname')

向表中添加sku=123456,name='productname' 的数据

update product set name='updated product name' where sku='123456'

将表product中的sku为'123456'的数据的name字段的值设置为'updated product name'

select sku,name from product where sku='123456'

从表product 中查询 sku为'123456'的数据

delete from product where sku='123456'

其他操作实例

多表查询

select p.sku,b.name from product p,brand b where p.brand_id=b.id and p.sku='123456'

子查询

select p.sku,p.name from product p where p.brand_id in (select id from brand where id=123)

左连接

select p.sku,p.name,b.name from product p left join brand b on p.brand_id=b.id

从一个表导入数据到另一个表

insert into product1 (sku,name,brand_id) (select sku,name,brand_id from product2)

查找不同的数据

select distinct p.sku from product p

查询时按照某个字段排序(asc升序,desc降序)

select * from product order by name desc

常见问题

如何创建表

CREATE TABLE  product (
`sku` char(6) NOT NULL COMMENT '商品的唯一标识/n',
`brand_id` int(11) default NULL,
`name` varchar(50) default NULL,
PRIMARY KEY (`sku`),
CONSTRAINT `brand_fk_constraint` FOREIGN KEY (`brand_id`) REFERENCES `brand` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

如何创建外键

alter table product add CONSTRAINT `brand_fk_constraint` FOREIGN KEY (`brand_id`) REFERENCES `brand` (`id`)

如何修改表中的字段

alter table product modify name varchar(200)

如何向表中添加字段

alter table product add comment varchar(200)

如何删除表中字段

alter table product drop name

存储过程和触发器

h3.mysql创建表

drop table if exists news;

/*==========================*/
/* Table: 消息表 */
/*==========================*/
create table news
(
NewsId bigint(20) not null unsigned primary key auto_increment,
NewsContext varchar(50) not null,
NewsType varchar(50) not null,
UsersId int(11) not null
);
alter table news add constraint FK_Id foreign key (NewsId)
references users (UsersId);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值