每天一个MySQL知识点(更新中)

xiaoxiao2021-02-28  111

1.创建数据库

create database db_name;

2.创建表格

create table table_name(id int auto_increment not null primary key,name varchar(100)); # id 是主键 create table table_name(id int auto_increment,name varchar(100),primary key(id,name)); #设置联合主键

3.添加name的属性

alter table table_name add name char(10);

4.修改属性

alter table table_name modify name char(10); #注意此时不能把modify改为change modify是对表格属性和约束的修改,是直接修改; change是复制旧的表格到新的表格,同时修改新表格的属性和约束; alter table table_name change name name_new char(10);

5.删除字段

alter table table_name drop column name;

6.删除表格

delete from table_name where id=1; delete from table_name; #删除表格数据 truncate table table_name; #比delete快,但是不能删除某条记录 drop table table_name; #前三种只是删除记录,drop是直接删除表格连同字段,约束等

7.在Linux进入MySQL

mysql -uroot -proot

8.进入数据库

use db_name;

9.查看所有表格

show tables;

10.查看表格属性

desc table_name;

11.复制表格的数据到另一个表格

insert into table_new(id,name) select id,name from table_old;

12.重启数据库服务

nohup mysqld --user=root & #在后台运行

13 退出数据库

exit

14 插入数据

insert into table_name(id,name)values(1,"aa"); insert into table_name(name)values("aa"); #如果设置id 为自增,也可以只插入name,但是这样做的前提是其她字段都有默认值 insert into ignore table_name(id,name)values(1,"bb"); #ignore 作用,因为id是主键,出现主键重复但使用了ignore,则错误被忽略。 replace into table_name(id,name)values(1,"cc"); #直接替换原有数据

15.设置默认值

alter table table_name alter column hash_name set default 0;

16.设置哈希字段为索引,适合快速检索数据

alter table table_name add hash_name char(32) not null; #添加hash_name字段 update table_name set hash_name=md5(name); #设置hash_name的值为对应的name的值的哈希值 alter table table_name add index index_name(hash_name); #设置hash_name字段为索引项 #索引会加快查询(select)的速度,但是会减慢(insertdelete)的速度

17.查看数据

select * from table_name where name = "aa"; #查看全部数据 select age from table_name where name = "aa"; #只查看年龄字段的值

18 .查看表格数据行数

select count(*) from table_name;

知识点

alter 是对表格属性进行修改,包括add , drop , modify 和 change; update是对表格数据进行修改,包括 set ,这个命令也可以和where结合,只更新部分数据。


如有错误,可以告诉我。^-^

转载请注明原文地址: https://www.6miu.com/read-56702.html

最新回复(0)