MySql 入门(二) 增删改查

############### MySql中的增删改查操作 ###################
show create database tedu;
create database db2 charset  utf8;
show create database db2;
#创建person表
use db2;
create table person(
    name varchar(50),
    age int
) charset utf8;


/*  插入数据(全表插入) */
    -- 插入的顺序要一致
    -- 插入的类型要一致
    -- 整数可以传入字符串类型,但必须是纯数字的组成的字符串
    -- 如果确定插入值,可以用null
select * from person;
insert into person
values ('张三',34);

insert into person
values ('刘备',null);

/*   指定指端插入记录   */
insert into person(name) values ('Tom');
insert into person(name, age) values ('罗友权',30);  -- 建议按顺序,表中字段列出


/*    全表插入多表记录   */
insert into person values('大飞',21),
                         ('二飞',18),
                         ('三飞',16);
insert into person(name) values ('Villa'),('jack'),('lossi');


#person 插入记录
    -- 如果插入字符串包含单引号,那么可以用两个单引号将其转换成一个单引号
    -- 单引号可以防止sql注入
create table user(
    username varchar(50),
    password varchar(50)
)charset utf8;

insert into user(username, password) values ('张张','234134'),('李晓峰','adfc'),('刘子龙','fadfsdg'),('王大飞','5464re');
select * from user where username='李晓峰' and password='adfc';

#但是输入用户名:xxxx  密码: 1' OR '1'='1
select * from user where username='xxxx' and password='1' OR '1'='1';

/*  修改数据   */
select * from person;
update person set age=45 where name='刘备';
update person set name='关羽',age=42 where name='Tom';

/* 删除数据 */
delete from person where name='lossi';
delete from person where age<20;


/* 数据类型 */
-- 数值、日期、字符串
-- 数值类型  tinyint smallint int[常用] bigint float doubl[常用]      decimal(m,n)[常用]
drop table tb1;
create table tb1(
    a tinyint,
    b smallint,
    c int,
    d bigint(4), -- 指定显示的宽度,可以不指定
    e float,
    f double,
    f1 double(6,4), -- 也可以像decimal一样显示,但不严格,一般不写
    g decimal(6,4)  -- 严格控制位数
)

insert into tb1(f1) values (22.33344);
insert into tb1(g)  values (22.33344);
insert into tb1(f1) values (222.33344);
insert into tb1(g)  values (222.33344);
select * from tb1;

/* 字符串类型
            定长字符串 char  ,最长255,插入长度不足会自动补足,超过赋值失败,
           不定长字符串   varchar ; 必须要指定长度;
            -- char的效率高于 varchar;
            text ; 65535个字节;
*/

/*日期类型
    timestamp 时间戳 ,会自动记录插入的时间
  
    YY-MM-DD
    HH:mm:SS
  */

create table tb3(
    a time,
    b date,
    c datetime,
    d timestamp
);
select * from tb3;
insert into tb3(a) values ('21:51:00');
update tb3 set b='2023-06-11' where a='21:51:00';


猜你喜欢

转载自blog.csdn.net/u010655348/article/details/131151451
今日推荐