SQL-2-零碎笔记

备份数据库

       无关小笔记,方式二,在某目录下打开dos环境

        在dos环境下进行

        例子1:把test和t_shop这两个数据库备份,结合成为一个yy.sql的数据库,

        输入的密码为mysql密码,两个数据库结合在一起

mysqldump -u root -p -B test t_shop > yy.sql

     

  例子2:这个是放在D盘下的,名为360bak.sql的数据库

mysqldump -u root -p -B test t_shop > d:\\360bak.sql

复制数据

步骤:

        1.创建表emp_01

CREATE TABLE emp_01 

( id INT,

  name VARCHAR(32),

  sal DOUBLE,

  job VARCHAR(32),

  deptno INT);

        2.插入数据

        2.1 正常插入数据,(把表emp_01的数据重新插入到表emp_01)

INSERT INTO emp_01 
	(id, name, sal, job,deptno)
	SELECT empno, ename, sal, job, deptno 
    FROM emp_01;

        2.2自我复制,(把表emp_01的数据重新插入到表emp_01)

INSERT INTO emp_01
	SELECT * FROM emp_01;

        已完成,再加一个

        查看统计:(由于做笔记记录过程中,电脑关机,只能重新做过记录,所以,这个我用的是另一个表)

SELECT COUNT(*) FROM my_tab01;

去重

        步骤

        1.复制表的结构

        创一张表 

 create table emp_02 like emp;

        2.把其他表的数据给复制过来

insert into emp_02 select * from emp_01;

去重

        步骤

        1.创一张新表也就是肉鸡表test,结构与想要的表emp_02一样,最后肉鸡表test不要的

create table test like emp_02;

        2.插入数据,并且要识别重复数据,得到干净的数据,不重复的数据S

insert into test select distinct * from emp_02;
select * from test;

        3.清除想要表emp_02的所有数据,除了结构

delete from emp_02;
select * from emp_02;

        4.插入干净的数据,不重复的数据S到想要的表emp_02

insert into emp_02 select * from test;
select * from emp_02;

        5.把肉鸡表test给删除

drop table test;

//delete 用来删除数据,drop 用来删除表

数据浮点、精度

        解释不说了,记录笔记时就没写,看效果就知道了

create table t3(
    num1 float,
    num2 double,
    num3 decimal(20,10));
insert into t3 values(10.12345,20.12345,30.12345);
select * from t3;

数据定长与非定长

create table t4(
    name char(3));

 insert into t4 values('大家好');

select * from t4;

insert into t4 values('大大家好');

create table t5(
    name varchar(255));

insert into t5 values('da大家好');

select * from t5;

insert into t4 values('大大');

时间

mysql> create table time(
    brithday date,
    work_time datetime,
    login_time timestamp
    not null default current_timestamp
    on update current_timestamp);

insert into time (brithday,work_time)
    values ('2024-08-11','2024-08-11 11:01');

select * from time;

CREATE TABLE data_type(
    id INT(11),
    name VARCHAR(255),
    sex CHAR(1),
    birthday DATE,
    entry_date DATETIME,
    job VARCHAR(255),
    salary DOUBLE,
    resume TEXT)
CHARACTER SET = utf8;

INSERT INTO data_type(id, name, sex, birthday, entry_date, job, salary, resume)
VALUES (1, '小猪妖', '雄', '2022-11-11', '2022-01-01 12:29:30', '给唐三藏报信', 18, '小妖怪的夏天,id 整型int,name 字符型varchar,sex 字符型char,birthday 日期型date,entry_date 日期型datetime,job 变长字符型varchar,salary 小数浮点型double,resume 文本型text');
select * from data_type;

查看表创建

SHOW CREATE TABLE 表名;

其中多有借鉴,出处于此

被借鉴处

如有侵权,原作请联系我,自会删除,另外,本人不常查看csdn消息,请耐心等待,绝非本人故意不处理事情

余着......

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值