MySQL使用详解--根据个人学习总结

 

 

1.安装配置

2.启动mysql服务并配置

    mysql> \s(status也行)查看当前服务器状态查看编码状态Server characterset : utf8Db characterset: utf8Client characterset: gbkConn. characterset: gbk修改:---进入配置文件my.ini
        客户端:[mysql]default-character-set=utf8服务端:[mysqld]character-set-server=utf8
查看状态和修改配置

3.登陆/退出MySql

    登陆:常用参数:-u, --username=name用户名(注:5.5版本去掉了--username写法)-p, 密码-h, --host服务器名称-P, --port端口号-D, --database, 打开指定数据库--prompt=name, 设置命令提示符--delimiter=name, 指定分隔符-V,--version,输出版本信息并且退出
        案例:a)mysql -rroot -pb)mysql -h127.0.0.1 -uroot -pc)mysql -h127.0.0.1 -uroot -p --prompt=abc (只对当前连接有效)d)mysql -uroot -proot -V
登陆
    退出:exitquit\qCtrl + c
退出

4.Mysql常用命令:

    显示当前版本 SELECT VERSION();显示当前日期时间 SELECT NOW();显示当前用户 SELECT USER();修改分隔符 DELIMITER \开启输出日志 \T +路径结束输出日志 \t
运维常用命令
	MYSQL语句规范:1.关键字与函数名称全部大写2.数据库名称,表名称,字段名称等全部小写3.SQL语句必须以分隔符结尾4.SQL语句支持折行操作,只要不把单词,标记或引号字符分割为两部分,可以在下一行继续写5.数据库名称,表名称,字段名称等尽量不要使用MySQL的保留字,如果需要使用的时候需要使用反引号('')将名称括起来

5.数据库操作:

    a)创建数据库:CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [[DEFAULT] CHARACTER SET [=] CHARSET_NAME]CREATE DATABASE test CHARACTER SET=UTF8b)查看当前服务器下的数据列表: SHOW {DATABASES | SCHEMA}得到当前打开的数据库名称 : SELECT DATABASE();c)查看上一步操作产生的警告信息: SHOW WARNINGS;d)删除指定数据库 DROP {DATABASE|SCHEMA} [IF EXISTS] db_name   案例:DROP DATABASE db_aaa1SHOW DATABASESe)查看指定数据库的定义 : SHOW CREATE {DATAASE|SCHEMA} db_namef)修改指定数据库的编码方式:ALTER {DATABASE|SCHEMA} db_name [DEFAULT]     CHARACTER SET[=] charset_nameg)打开指定数据库: USE db_name
创建等语句

6.Mysql中的数据类型  --具体常用的可以参考

    整数类型  --int  --TINYINT(1),0为false,其余为true浮点类型  --FLOAT 4字节字符串类型--CHAR(M)  M 个字节,0<=M<=255  | VARCHAR(m) 0<=M<=65535 L+1个字节  | ENUM('value1','value2'..)1或两个字节,取决于枚举值的个数最多65535个值日期时间类型 time date datetime  year TIMESTAEP二进制类型 视频格式,图片路径啊等
bit[(M)]二进制位(101001),m表示二进制位的长度(1-64),默认m=1tinyint[(m)] [unsigned] [zerofill]小整数,数据类型用于保存一些范围的整数数值范围:有符号:-128127.无符号:0255特别的: MySQL中无布尔值,使用tinyint(1)构造。int[(m)][unsigned][zerofill]整数,数据类型用于保存一些范围的整数数值范围:有符号:-21474836482147483647无符号:04294967295特别的:整数类型中的m仅用于显示,对存储范围无限制。例如: int(5),当插入数据2时,select 时数据显示为: 00002bigint[(m)][unsigned][zerofill]大整数,数据类型用于保存一些范围的整数数值范围:有符号:-92233720368547758089223372036854775807无符号:018446744073709551615decimal[(m[,d])] [unsigned] [zerofill]准确的小数值,m是数字总个数(负号不算),d是小数点后个数。 m最大值为65,d最大值为30。特别的:对于精确数值计算时需要用此类型decaimal能够存储精确值的原因在于其内部按照字符串存储。FLOAT[(M,D)] [UNSIGNED] [ZEROFILL]单精度浮点数(非准确小数值),m是数字总个数,d是小数点后个数。无符号:-3.402823466E+38 to -1.175494351E-38,01.175494351E-38 to 3.402823466E+38有符号:01.175494351E-38 to 3.402823466E+38**** 数值越大,越不准确 ****DOUBLE[(M,D)] [UNSIGNED] [ZEROFILL]双精度浮点数(非准确小数值),m是数字总个数,d是小数点后个数。无符号:-1.7976931348623157E+308 to -2.2250738585072014E-30802.2250738585072014E-308 to 1.7976931348623157E+308有符号:02.2250738585072014E-308 to 1.7976931348623157E+308**** 数值越大,越不准确 ****char (m)char数据类型用于表示固定长度的字符串,可以包含最多达255个字符。其中m代表字符串的长度。PS: 即使数据小于m长度,也会占用m长度varchar(m)varchars数据类型用于变长的字符串,可以包含最多达255个字符。其中m代表该数据类型所允许保存的字符串的最大长度,只要长度小于该最大值的字符串都可以被保存在该数据类型中。注:虽然varchar使用起来较为灵活,但是从整个系统的性能角度来说,char数据类型的处理速度更快,有时甚至可以超出varchar处理速度的50%。因此,用户在设计数据库时应当综合考虑各方面的因素,以求达到最佳的平衡texttext数据类型用于保存变长的大字符串,可以组多到65535 (2**161)个字符。mediumtextA TEXT column with a maximum length of 16,777,215 (2**241) characters.longtextA TEXT column with a maximum length of 4,294,967,295 or 4GB (2**321) characters.enum枚举类型,An ENUM column can have a maximum of 65,535 distinct elements. (The practical limit is less than 3000.)示例:CREATE TABLE shirts (name VARCHAR(40),size ENUM('x-small', 'small', 'medium', 'large', 'x-large'));INSERT INTO shirts (name, size) VALUES ('dress shirt','large'), ('t-shirt','medium'),('polo shirt','small');set集合类型A SET column can have a maximum of 64 distinct members.示例:CREATE TABLE myset (col SET('a', 'b', 'c', 'd'));INSERT INTO myset (col) VALUES ('a,d'), ('d,a'), ('a,d,a'), ('a,d,d'), ('d,a,d');DATEYYYY-MM-DD(1000-01-01/9999-12-31)TIMEHH:MM:SS('-838:59:59'/'838:59:59')YEARYYYY(1901/2155)DATETIMEYYYY-MM-DD HH:MM:SS(1000-01-01 00:00:00/9999-12-31 23:59:59    Y)TIMESTAMPYYYYMMDD HHMMSS(1970-01-01 00:00:00/2037 年某时)
完整版数据类型

7.(一)数据库表相关操作

a.什么是表?

1         数据表是数据库最重要的组成部分之一,是其他对象的基础
2         数据表是存储数据的数据结构
3         数据表示包含了特定实体类别的数据
4         数据表由行(row)和列(column)构成的二维网络
5         数据表一定现有表结构,再有数据
6         数据表至少有一列,可以没有行或者多行
7         数据表名称要求唯一,而且不要包含特殊字符

b.如何创建数据表?

1         CREATE TABLE [IF NOT EXISTS] tbl_name(字段名称 字段类型 [完整性约束条件]。。。)ENGINE=引擎名称 CHARSET='编码方式'2         完整性约束条件:
3                         1.PRIMARY KEY主键v--唯一的字段,且不能重复
4                         2.AUTO_INCREMENT自增长
5                         3.FOREIGN KEY 外键
6                         4.NOT NULL 非空
7                         5.UNIQUE KEY 唯一
8                         6.DEFAULT默认值

c.如何查看数据库中的数据表以及表结构?

1 查看数据库下的数据表: SHOW TABLES
2 查看指定表的表结构:
3 DESC tbl_name
4 DESCRIBE tbl_name
5 SHOW COLUMNS FROM tbl_name

d.创建表

案例一:创建新闻分类cms_cate 编号,分类名称,分类描述

后加:注意一个地方:create table ....(id int,caption chr注意这里写完就没有逗号了)。。。;否则报错,大爷的找了一晚上。

1 CREATE TABLE IF NOT EXISTS cms_cate(
2 id TINYINT,
3 cateName VARCHAR(50),
4 cateDesc VARCHAR(200),
5 )ENGINE=MyISAM CHARSET=UTF8;
代码

案例二:
创建新闻表cms_news
编号,新闻标题,新闻内容,新闻发布时间,点击量,是否置顶,新闻所属分类,发布人

1 CREATE TABLE Persons
2 (
3 Id_P int NOT NULL,
4 LastName varchar(255) NOT NULL,
5 FirstName varchar(255),
6 Address varchar(255),
7 City varchar(255),
8 UNIQUE (Id_P)
9 );
代码一
1 CREATE TABLE IF NOT EXISTS cms_testnews(
2 id INT PRIMARY KEY,
3 title VARCHAR(50)  unique not null,
4 content TEXT  not null,
5 pubTime INT unique not null,
6 isTop TINYINT(1) COMMENT '0代表不置顶,1代表置顶' 
7 ) ENGINE=InnoDB CHARSET=UTF8;
代码二

7.(二)MySQL 存储引擎

a.什么是存储引擎?

1         存储引擎就是指表的类型。数据库的存储类型决定了表在计算机中的存储方式。用户可以根据不同的存储方式、是否
2         进行事务处理等来选择合适的存储引擎

b.如何查看MySQL的存储引擎?

1         查看MySQL支持的存储引擎:       SHOW ENGINES \G;
2                         Engine:存储引擎
3                         Support:是否支持这种存储引擎
4                         Comment:引擎特点
5                         Transactions:是否支持事务处理
6                         XA:是否是分布式的交易处理
7                         Savepoints:是否支持保存点
8         查看显示支持的存储引擎信息:    SHOW VARIABLES LIKE 'have%'
9         查看默认的存储引擎:            SHOW VARIABLES LIKE 'storage_engine'

c.MySQL常用存储引擎及特点:

1                             InnoDB存储引擎  --5.1版本之后
2                                             事务修改:---进入配置文件my,回滚,修复,分布式,多版本并发控制的事物安全
3 
4                             MyISAM存储引擎  --5.1版本之前
5                                             frm --存储表结构
6                                             myd     --存储数据
7                                             myi --存储索引
8                             MEMORY存储引擎    
9                                             数据存储在内存,安全性低,速度快,生命周期短

d.如何选择合适的存储引擎?

       ---建议根据需求来选择存储引擎

完整性约束条件:

1、给字段选择合适的类型
PRI代表主键 不能为空, 一个表中只能有一个主键

查看创建表的定义
SHOW CREATE TABLE user1;

2、AUTO_INCREMENT自增长
被标志成自增长的一定是主键,主键不一定是自增长的

CREATE TABLE IF NOT EXISTS user5(
id SMALLINT KEY AUTO_INCREMENT,
username VARCHAR(20));  --)AUTO_INCREMENT=100;指定起始值increment(自增长)
INSERT user5 VALUES(1,'KING');

  由于是自增长,可以换种写法

INSERT user5(username) VALUES('QUEN');

 

3、NOT NULL非空 --经常配合默认值使用

无符号的UNSIGEND(unsigned)
CREATE TABLE IF NOT EXISTS user7(
id INT UNSIGNED KEY AUTO_INCREMENT, 意思id是无符号的自增长的键
username VARCHAR(20) NOT NULL,
password CHAR(32) NOT NULL,
age TINYINT UNSIGNED);INSERT user7(username, passwprd) VALUES('KING', 'KING');
INSERT user7(username, passwprd, age) VALUES('KING', 'KING', 12);
INSERT user7(username, passwprd) VALUES(NULL, 'KING');
实例

4.DEFAULT默认值

CREATE TABLE IF NOT EXISTS user7(
id INT UNSIGNED KEY AUTO_INCREMENT, 意思id是无符号的自增长的键
username VARCHAR(20) NOT NULL,
password CHAR(32) NOT NULL,
age TINYINT UNSIGNED DEFAULT 18);
案例

5.UNIQUE KEY 唯一(一个表中只能有一个主键,但可以有多个唯一)

CREATE TABLE IF NOT EXISTS user9(
id TINYINT UNSIGNED KEY AUTO_INCREMENT,
username VARCHAR(20) NOT NULL UNIQUE,
card CHAR(18) UNIQUE)DESC user9 ;
案例

6.外键(后面讲-配合多表查询)

外键,一个特殊的索引,只能是指定内容

可以理解为如果表A的主关键字是表B中的字段,则该字段称为表B的外键,表A称为主表,表B称为从表。外键是用来实现参照完整性的。

            creat table color(nid int not null primary key,name char(16) not null)create table fruit(nid int not null primary key,smt char(32) null ,color_id int not null,constraint fk_cc foreign key (color_id) references color(nid))
案例

如何操作表结构

修改表名:ALTER TABLE tbl_name RENAME [TO|AS] NEW_NAMERENAME TABLE tbl_name TO new_name添加字段:ALTER TABLE tbl_name ADD 字段名称 字段类型【完整性约束条件】[FIRST|AFTER字段名称]
删除字段:ALTER TABLE tbl_name DROP 字段名称
修改字段属性:ALTER TABLE tbl_name MODIFY 字段名称 字段类型【完整性约束条件】【FIRST|AFTER 字段名称】
修改字段名称:ALTER TABLE tbl_name CHANGE 旧字段名称 新字段名称字段类型[完整性约束条件]【FIRST|AFTER字段名称】
添加默认值:ALTER TABLE tbl_name ALTER 字段名称SET DEFAULT默认值
删除默认值:ALTER TABLE tbl_name ALTER 字段名称 DFOP DEFAULT 
添加主键:ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] PRIMARY KEY[index_type] (字段名称,...)
删除主键:ALTER TABLE tbl_name DROP PRIMARY KEY
添加唯一:ALTER TABLE tbl_name ADD [CONSTRAINT[symbol]] UNIQUE [INDEX|KEY] [索引名称](字段名称,..)
删除唯一:ALTER TABLE tbl_name DROP {INDEX|KEY} index_name
修改表的存储引擎:ALTER TABLE tbl_name ENGING=存储引擎名称 
设置自增长的值:ALTER TABLE tbl_name AUTO_INCREMENT=5.如何删除数据表
DROP TABLE[IF EXISTS] tbl_name[,tbl_name....]

 

CREATE TABLE IF NOT EXISTS user10(
id SMALLINT UNSIGNED KEY AUTO_INCREMENT,
username VARCHAR(20) NOT NULL UNIQUE,
password CHAR(32) NOT NULL,
email VARCHAR(50) NOT NULL DEFAULT '12344@qq.com',);

添加字段

以user10为例
添加card字段CHAR(18);
ALTER TABLE user10 ADD card CHAR(18);
查看表结构:DESC user10;
完整性约束条件: 
ALTER TABLE user10 ADD test VARCHAR(100) NOT NULL UNIQUE;
ALTER TABLE user10 ADD test1 VARCHAR(100) NOT NULL FIRST;
ALTER TABLE user10 ADD test2 VARCHAR(100) NOT NULL DEFAULT 100 AFTER username;
选中一次表,完成多个操作
ALTER GTABLE user10
ADD test4 INT NOT NULL DEFAULT 123 AFTER password,
ADD test5 FLOAT(6,2) FIRST,
ADD test6 SET('A','B','C');
查看表结构:DESC user10;
案例

删除email字段

 

ALTER TABLE user10 DROP test6;
ALTER TABLE user10 DROP test1;DESC user10;一次删除多个字段
ALTER TABLE user10
DROP test2,
DROP test3,
....;
案例

添加test字段删除addr字段

ALTER TABLE user10
ADD test  INT UNSIGNED NOT NULL DEFAULT 10 AFTER sex,
DROP addr;
案例

修改字段属性

ALTER TABLE uer10 MODIFY email VARCHAR(200);--修改的是所有属性,没写的会变回默认
所以建议在改之前要先DESC tbl_name;查看一下表结构

添加默认值

CREATE TABEL IF NOT EXISTS test12(
id TINYINT UNSIGNED KEY AUTO_INCREMENT,
username VARCHAR(20) NOT NULL UNIQUE,
age TINYINT UNSIGNED);

 

添加默认值:
ALTER TABLE user11 ALTER age SET DEFAULT 18; 
DESC user11;
ALTER TABLE user11 ALTER age DROP DEFAULT;
ALTER TABLE user11 ALTER username DROP DEFAULT;
案例

如何添加主键

CREATE TABLE IF NOT EXISTS test12(
id INT);
ALTER TABLE test12 ADD PRIMARY KEY(id);
案例

 

CREATE TABLE IF NOT EXISTS test13(
id INT,
card CHAR(18),
username VARCHAR(20) NOT NULL);
ALTER TABLE test13 ADD PRIMARY KEY(id, card);
案例

删除test12表的主键

ALTER TABLE test12 DROP PRIMARY KEY;
在添加回来
ALTER TABLE test12 ADD CONSTRAINT symbol PRIMARY KEY index_type(id);
案例

----注意:

带有主键的自增长---删除
CREATE TABLE IF NOT EXISTS test14(
id INT UNSIGNED KEY AUTO_INCREMENT);ALTER TABLE test14 DROP PRIMARY KEY; ---会报错;所以先删除自增长
所以:
ALTER TABLE test14 MODIFY id INT UNSIGNED;利用MODIFY关键字去掉了特殊属性;(就是利用修改属性,没修改的变成默认值)
ALTER TABLE test14 DROP PRIMARY KEY;

修改表的存储引擎
修改表的存储引擎为MyISAM;

ALTER TABLE user12 ENGINE=MyISAM;
修改自增长的值
ALTER TABLE user12 AUTO_INCREMENT=100;

删除数据表

DROP TABLE[IF EXISTS] tbl_name[, tbl_name...]DROP TABLE IF EXISTS user12;
SHOW WARNINGS;  查看警告
DROP TABLE IF EXISTS user1,user2,user3;
View Code

 

清空自增id

我们的数据库表中经常会使用id自增,但是每次清空表后id并不是从1开始计数,总是接着之前的进行自增,那么解决呢?

使用mysql的truncate命令,用法:truncate table 表名;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/293799.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

送什么给女朋友最致命?

1 啊&#xff0c;原来里面有说明书&#xff08;via.豆瓣哈组&#xff0c;侵删&#xff09;▼2 网友给女朋友准备的惊喜&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼3 这个泰国小哥的创意真棒&#xff08;via.阿森不是妖怪&#xff0c;侵删&#xff09;▼4 老婆的…

如何修改 匿名类型 中的属性值 ?

咨询区 Leo Vo我有下面一段代码&#xff1a;var output new {NetSessionId string.Empty };foreach (var property in output.GetType().GetProperties()) {property.SetValue(output, "Test", null); }代码运行后&#xff0c;它会抛出如下异常&#xff1a;Propert…

SWF反编译神器ASV2013功能展示(下)

动作脚本菜单动作脚本-查看元件类动作脚本-编辑AS3常量池动作脚本-ASV内部ABC数据浏览器窗口菜单 选项菜单-帧视图选项 选项菜单-预览窗口选项选项菜单-时间线视图选项选项菜单-库视图选项 选项菜单-动作脚本视图选项实用工具菜单 关于对话框 转载于:https://blog.51cto.com/as…

Andorid之taskAffinity 和 FLAG_ACTIVITY_NEW_TASK

taskAffinity 和 FLAG_ACTIVITY_NEW_TASK都是和activity启动时是否需要新建一个task有关&#xff0c;我们分四种情况看一下这两个标志对启动activity的影响&#xff1a;(前提&#xff1a;从MainActivity中启动ActivityA) 1)、两个标志都不设置 2)、有FLAG_ACTIVITY_NEW_TASK …

【项目 报错】 项目启动,内存溢出 可能出现的各种报错

内存溢出可能有如下的错误&#xff1a; 错误1&#xff1a; java.lang.OutOfMemoryError: PermGen space 错误2&#xff1a; Exception in thread "http-apr-8080-exec-2" 出现如上的错误&#xff0c;解决方法如下&#xff1a; 1.双击Tomcat 2.点击open launch config…

杨中科的.NET 6新书的出版进度汇报

各位朋友好&#xff0c;我有3个月没发公众号了&#xff0c;今天打扰大家一下&#xff0c;不好意思。最近这3个月&#xff0c;我在忙着给我的.NET 6新书收尾&#xff0c;并且在.NET 6正式版发布后&#xff0c;我把书中用.NET 6 预览版编写的内容在.NET 6正式版中又验证了一遍&am…

2021,如何找到适合自己的圈子?

全世界只有3.14 % 的人关注了爆炸吧知识蔡康永分享过这样一段话&#xff1a;“小S的个性本身就是很乐天&#xff0c;很有活力&#xff0c;她这个朋友让我觉得活着是一件很值得、很舒服、很有趣的事。而有的人会让我觉得活着很没劲&#xff0c;碰到他会把我的能量都吸走”。你和…

Android之用Intent.FLAG_ACTIVITY_CLEAR_TOP解决界面重复拉起问题

今天遇到了一个问题: 就是界面在服务拉起来用的Intent.FLAG_ACTIVITY_NEW_TASK导致登录界面拉起很多次,登录还要登录,主要是之前的activity没有关闭 用it.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_TOP)解决。 A - B - C 当 B - A - B 跳转的时…

抓图实例

//调用动态链接库gdi32.dll[ System.Runtime.InteropServices.DllImportAttribute ( "gdi32.dll" ) ]private static extern bool BitBlt (IntPtr hdcDest , //目标设备的句柄int nXDest , // 目标对象的左上角的X坐标int nYDest , // 目标对象的左上角的X坐标int nW…

代码Review发现问题

FrmMain.cs中存在问题 1. int i0 设定为了全局常量且未在类顶部&#xff0c;出现问题时不好查找 i 属于常用临时变量&#xff0c;设定全局变量容易引起混乱 2.定义的全局变量但仅在一处方法中使用&#xff0c;定义全局变量过多 3.变量名及控件名等意义不明确又缺少注释&#xf…

I/O多路转接之poll——基于TCP协议

1. 函数a. 参数&#xff1a;&#xff08;1&#xff09;fds:是一个struct pollfd结构类型的指针&#xff0c;指向用于存放需要检测状态的Socket描述符&#xff1b;每当调用这个函数之后&#xff0c;系统不会清空这个数组&#xff0c;操作起来比较方便&#xff1b;特别是对于sock…

Android之 FLAG_ACTIVITY_CLEAR_TASK

FLAG_ACTIVITY_CLEAR_TASK :如果在调用Context.startActivity时传递这个标记&#xff0c;将会导致任何用来放置该activity的已经存在的task里面的已经存在 的activity先清空&#xff0c;然后该activity再在该task中启动&#xff0c;也就是说&#xff0c;这个新启动的activity变…

C# 日志管理框架:Common.Logging和log4net

01—DLL引用‍common logging是一个通用日志接口框架&#xff0c;log4net是一个强大的具体实现框架. common logging可以把输出连接到其他非log类上, 如EntLib的日志、NLog等‍‍‍‍‍‍‍‍‍‍‍‍‍‍项目中需要引入的DLL:Common.Logging.dllCommon.Logging.Core.dllCommon…

boost常用记录

1.BOOST_FOREACH 经常会遍历容器&#xff0c;写for/while循环到手痛&#xff0c;使用BOOST_FOREACH可以减少我们的工作。支持容器vector/list/set/deque/stack/queue#include <boost/foreach.hpp> BOOST_FOREACH(value,container){ //遍历每个元素 } 例子&#xff1a; ve…

Cacti迁移RRA数据迁移脚本

迁移程序和数据库完成后&#xff0c;默认的rra数据并不能出图&#xff0c; 需要从旧机器上将rra数据导出到新机器上&#xff0c;附上脚本 #导出rra数据 #!/bin/bash rrddump"/usr/bin/rrdtool dump" xmldir/data/rraxml/ rradir/var/www/html/cacti/rra/ for file in…

Android之FLAG_ACTIVITY_SINGLE_TOP

FLAG_ACTIVITY_SINGLE_TOP :如果当前栈顶的activity就是要启动的activity,则不会再启动一个新的activity实例&#xff1a;我们有一个apk&#xff0c;apk中包含两个Activity:MainActivity和ActivityA&#xff0c;点击MainActivity启动ActivityA,点击ActivityA还是启动ActivityA&…

我开发了一个对.NET程序进行瘦身的工具

我开发了一个对.Net程序瘦身的工具&#xff0c;可以把被引用但是没有被使用的程序集删除。我用它把一个.Net core程序从147兆瘦身到59.5兆。.NET中发布程序的时候有对程序集进行剪裁的功能&#xff0c;但是那个功能只能做静态检查。比如我们的项目使用了A程序集&#xff0c;A程…

三联竟出了这么赞的杂志!各领域佼佼者畅所欲言,为少年建立思维判断体系!

▲点击查看很多中国小孩的成长是断层的。10岁前被视作可爱稚子&#xff0c;被大人护着走&#xff1b;18岁猛然被定义为成年人&#xff0c;要选择大学、专业&#xff0c;开始面对感情。中间的人生呢&#xff1f;“你是个学生&#xff0c;学习是本职&#xff0c;现在谈什么人生&a…

源码lnmp

1、准备工作&#xff1a;配置yum源安装开发工具、编译工具gcc gcc-c make配置固定ip地址 关闭iptables selinuxnetstat -anpult | grep :3306netstat -anpult | grep :80若端口占用kill并service httpd stop ; chkconfig httpd offservice mysqld stop ; chkconfig mysqld off …