d3 tip mysql_mysql

字符:

char(10)->定长、10个字符宽度。如果右侧不够,则空格补齐,取出来的时候删除空格。

varchar(10)->变长、最多10个字符

如:存姓名的时候,没必要为了那几个长度去使用varchar,使用定长去存储会提高效率!

日期时间:

Year->1字节->95||1995->【1901-2155】

Date->日期->1998-12-31->【1000-01-01->9999-12-31】

Time->时间->13:56:23->->【-838:59:59->838:59:59】

datetime->时间戳->1970-01-01 00:00:00到当前的秒数

Tip:Date  Date  datetime在insert的时候需要加上引号 、实际开发中,一般不是用这些,直接使用787657676类似于这个样子的整形来存储(其实就是以1970年0点为准,然后换算成秒数存储)。搞iOS开发的肯定遇到过

not null:

1、NULL查询不便、索引效率不高、所以实用中避免列的值为NULL

2、声明列的值为NOT NULL,并且default一个默认值

主键与自增:

主键primary key此列不重复,就能够区分每一行!

一个表中只能有一个auto_increment,而且这一列必须加上primary key索引

修改列:

alter table tableName add 列名 类型 属性... ->默认在table的最后

alter table tableName add 列名 类型 属性 after 制定列名->将增加到制定的列名后面

alter table tableName drop column 列名

alter table tableName change 列名 新名字 类型 属性...

alter table tableName modify 列名 新属性...

change可以修改列名,但是modify不能修改列明,只能修改列的属性

视图(View):

create view vgoods as select goods_name , goods_id from goods;

view又被称为虚拟表,view是sql语句的一个查询结果。

好处:

1、权限控制时可以用;如:某几个列允许用户查询,其他列不可以。

create view tmpview as select goods_name from goods;

select * from tmpview;

2、简化复杂的查询;

3、修改物理表,虚拟表一定会被修改;如果物理表完全 一 一对应着虚拟表,则修改虚拟表会映射到物理表。但是,比如虚拟表是求平均之类的,不是一一对应的,则不能修改虚拟表,因为没法确认到物理表的具体的某一个位置。

查询view有两种可能:

1、将创建view的语句和查询view的语句合并,然后直接查物理表。这种方式叫做merge

2、如果view的形成就比较复杂了,那首先查询物理表,在内存中形成一个view,然后再查询这个view。

使用merge方式:create algorithm-merge view view1 as select ... from goods;

使用temptable:create algorithm-temptable view view2 as select ... from goods;

自己搞不定就让数据库自动决定!

表\视图管理语句:

查看所有表:show tables;

查看结构:desc table/view-name;

查看建表/视图过程:show create  table/view  table/view-name;

删除表/视图:drop table table/view-name;

查看表的详细信息:show table status;加上\G会竖着显示

改表名:rename table old-name to new-name;

清空表数据:truncate;

delete和truncate的区别:

delete  from table-name where id = 2;(id是auto_increment的),下次再插入一个数据的时候,id会直接从3开始,而不会从2开始,即使id=2的已经被删掉。

truncate table-name;相当于执行了两步,首先drop掉这个table。然后又重新建立一次!

所以...自己体会

存储引擎:

Myisam:单纯的存取而已,没有什么检查之类的!

InnoDB:存取都有检查,有自己的日志!

以上两者参考燕十八的比喻!

eg:create....( ... ) engine-InnoDB default charset-utf8;

字符集乱码问题:

文本本来的字符集与展示的字符集不一致就导致了乱码!

我要存的类型是gbk/utf8:set character_set_client = gbk/utf8;

我要取数据,请返回给我gbk/utf8类型的数据:set character_set_result = gbk/utf8;

连接器不要设置比较小的字符集,不然会损失掉数据,而且是不可逆的!

如果client、result、connect都设置为同一样字符集,比如utf8,那就可以直接简写为set names utf8;

乱码的话检查四个地方:php文件类型、php mate类型(meta charset='utf-8')、创建的table的类型、有没有执行set names utf8;

校对集就是一种排序规则。

索引:

作用:

1、索引就相当于数据的目录,能快速定位数据的位置。

2、索引是有代价的,它提高了查询的速度,但是损耗了增删改的效率。

3、一般在查询比较频繁的列上加索引,而且重复率低的的列上效果更好。比如:性别,只有男、女(shit,其他的不考虑),所有就没必要加上索引。

类型:

普通索引key、唯一索引unique key、主键索引primary key、全文索引(在中文环境下无效,一般用第三方的解决方案)

索引在所有的列设置完了之后设置!

1f273728c12e

设置索引

1f273728c12e

设置索引长度

1f273728c12e

多列索引

冗余索引:

就是在某个列上存在多个索引。

索引操作:

show index from table-name \G;

alter table table-name drop index index-name;/drop index index-name on table-name;  (删除索引)

alter table table-name add index unique index-name(line-name);(增加索引)

alter table table-name add primary key (line-name);(增加主键索引,不需要索引名)

alter table table-name drop primary key;(删除主键索引)

事务:(myisam不支持事务)

特性:隔离性、原子性、一致性、持久性(一旦commit之后,就没法rollback)。

start transaction;启用事务

commit;确认

rollback;回滚

我算是知道什么是事务什么事回滚了!!

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

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

相关文章

php工厂模式和单例模式,php 设计模式之工厂模式、单例模式、注册树模式

php 设计模式之工厂模式、单例模式、注册树模式在软件工程中,创建型设计模式承担着对象创建的职责,尝试创建适合程序上下文的对象,对象创建设计模式的产生是由于软件工程设计的问题,具体说是向设计中增加复杂度,创建型…

php 正则匹配unicode,PHP中正则表达式对UNICODE字符码的匹配方法

网友ainiaa的问题是PHP代码如下代码如下:$words "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSRUVWXYZ!#$%^&*()_-[]\\,./{}|<>?\"你好啊我们";$otherStrpreg_replace("/[chr(128)-chr(256)]/is"," ",$words);ech…

iis7怎么安装php7,Linux下如何安装php7

Linux下安装php7的方法&#xff1a;首先安装依赖包&#xff0c;并下载解压安装包&#xff1b;然后检查环境的依赖关系&#xff0c;并编译安装&#xff1b;接着将【php.ini-production】改名为【php.ini】&#xff1b;最后复制启动脚本&#xff0c;并启动PHP即可。Linux下安装ph…

flux react php,Vue的Flux框架之Vuex状态管理器

学习vue之前&#xff0c;最重要是弄懂两个概念&#xff0c;一是“what”&#xff0c;要理解vuex是什么&#xff1b;二是“why”,要清楚为什么要用vuex。Vuex是什么&#xff1f;Vuex 类似 React 里面的 Redux 的状态管理器&#xff0c;用来管理Vue的所有组件状态。为什么使用Vue…

php在类定义一个我静态变量,php中静态类与静态变量用法的区别分析_PHP教程

php中静态类与静态变量用法的区别分析static是定义一个静态对象或静态变量,关于static 定义的变量或类方法有什么特性我们看完本文章的相关实例后就见分晓了.1. 创建对象$object new Class()&#xff0c;然后使用”->”调用&#xff1a;$object->attribute/function&…

matlab声音信号时域频域转换,关于处理用采集卡采集到的声音时域信号转化成频域信号........

求助各位大神&#xff0c;我用麦克风通过采集卡采集到了一段声音数据&#xff0c;数据在附件里&#xff0c;矩阵中第一列为时间&#xff0c;第二列为采集到的声音的电压信号&#xff0c;采样频率为1万Hz&#xff0c;做出时域图和频域图的程序如下所示&#xff1a;clear;clc;loa…

win7和mysql乱码,windows本地mysql数据库存入中文乱码

windows本地mysql数据库存入中文乱码作者:PHPYuan 时间:2018-07-23 03:41:20出现的问题&#xff1a; 我这页面存中文到数据库会乱码 我打了断点 中文是传到后台dao层的 然后我试了下 把我本地项目连服务器数据库 保存不会乱码 我就怀疑是本地数据库有问题 然后我用navicat写了个…

oracle 600 侯,oracle在导入数据时报600错误的解决方法

前言前几天导入一个大容量dmp数据文件&#xff0c;报一个600错误&#xff0c;咨询网上的解决方法&#xff0c;按上面的处理一圈也没有整好&#xff0c;最后咨询组里一个大神&#xff0c;出现此错误 思路是&#xff0c;单个数据文件大小最大为32G&#xff0c;分析数据库后解决如…

Oracle插数据timeout,oracle 11g 频繁报kmgs_parameter_update_timeout

各位 好&#xff01;我的数据库RAC 11g 最近频繁报错&#xff0c;数据库版本是11.2.0.1.0 详细错误信息如下&#xff1a;Errors in file /u01/app/oracle/diag/rdbms/glddb/glddb1/trace/glddb1_mmon_27429.trc (incident123874):ORA-00600: internal error code, arguments: …

linux touch更新文件时间,Linux文件时间的查看和修改touch

1. Linux文件的时间Linux下文件时间主要有下面三种&#xff1a;1.1 modification time(mtime)文件修改时间&#xff0c;即文件内容的修改时&#xff0c;更新这个时间&#xff0c;不包括文件权限和属性的修改。使用ls -l查看&#xff0c;默认显示时间为mtime$ ls -l uconv.h-rw-…

linux中ftp禁止匿名,linux下禁止root和匿名用户登录ftp

1、ftp通过root或其他用户进入可视化界面权限过大&#xff0c;容易导致系统文件误删windows下输入ftp://IP去访问&#xff0c;不需要账号密码就可以访问到ftp文件夹刚进去pub是空的&#xff0c;在linux上新增一个txt文件&#xff0c;再去windows下刷新可以看到txt文件&#xff…

mats显存测试软件linux环境,Mats显存检测软件下载-Mats显存检测软件最新版下载-微侠手游网...

Mats显存检测软件是一款专业的显卡检测工具&#xff0c;全系统都是中文的&#xff0c;是一款装机必备的硬件工具&#xff0c;帮助你了解自己的显卡运作情况&#xff0c;有任何问题都可以第一时间暂停&#xff0c;看完的小伙伴可以关注微侠网下载最新版软件以及查看最新攻略及资…

c语言编程函数补充上机题,2011年计算机二级C语言上机操作题及答案(10)

/********found********/void fun(char *s, *t1, *t2, *w){int i;char *p, *r, *a;strcpy(w, s);while (*w){p w;r t1;/********found********/while (r)if (*r *p){r;p;}else{break;}if (*r ’\0’){a w;r t2;while (*r){*a *r;a;r;}w strlen(t2);}else{w;}}}main(…

c语言 手机图形库,c语言的图形库 - osc_opiar5rp的个人空间 - OSCHINA - 中文开源技术交流社区...

图形库链接http://www.easyx.cn/ 使用图形库头文件easyx.h或graphics.h同样在里面下载图形库帮助文档进行查询vs vc都可使用图形库图形库窗口&#xff1a;initgraph打开窗口closegraph关闭窗口颜色RGB值 RGB(,,)&#xff1a;red green blue 下表值都可以在函数中直接使用填充颜…

android 自动挂断,[转]android 来电自动接听和自动挂断

注意&#xff1a;android2.3版本不支持下面的自动接听方法。(会抛异常&#xff1a;java.lang.SecurityException:Neither user xxxxx nor current process hasandroid.permission.MODIFY_PHONE_STATE.)第一步&#xff1a;准备应用环境需要的系统包和aidl文件。(1)在应用中创建包…

Android实现mp3分析,Android编程实现播放MP3功能示例

本文实例讲述了Android编程实现播放MP3功能。分享给大家供大家参考&#xff0c;具体如下&#xff1a;在android中播放mp3非常简单&#xff0c;也是项目中经常使用的&#xff0c;比如说要做项目的背景音乐&#xff0c;应用中某些功能的提示音等的。应用非常广泛,下面提供一个简单…

android 投票功能,腾讯新闻Android客户端更新 加入投票功能

腾讯近日更新了其应用《腾讯新闻》安卓版&#xff0c;加入了新闻专题&#xff0c;投票两大新功能&#xff0c;同事还优化了用户界面&#xff0c;大家在浏览各类新闻方面又有了新的选择。新版特点&#xff1a;1、新闻专题&#xff1a;热门新闻专题呈现&#xff0c;聚合浏览&…

android8.1自定义通知栏,Android 8.1隐藏状态栏图标的实例代码

近期客户需求&#xff0c;状态栏只显示时间和电池图标&#xff0c;如图状态栏图标的布局文件在frameworks\base\packages\SystemUI\res\layout\status_bar.xml,主要包括通知&#xff0c;定位&#xff0c;蓝牙&#xff0c;信号&#xff0c;时间&#xff0c;电池等图标&#xff0…

广州城市地图为android,广州无障碍地图

广州无障碍地图是一款非常不错的手机导航app&#xff0c;专门为老人与残障人士打造的哦。该app将准确的为残障用户规划出一条没有任何障碍的出行路线&#xff0c;并且该软件拥有语音、文字等不同的播报方式。特色说明1、智能化的手机导航的系统&#xff0c;语音识别2、最为准确…

华为副总鸿蒙,“哄蒙”败北!华为副总裁落实最新消息,鸿蒙3月31日正式亮剑...

原标题&#xff1a;“哄蒙”败北&#xff01;华为副总裁落实最新消息&#xff0c;鸿蒙3月31日正式亮剑不得不说&#xff0c;最近的华为生态建设又取得了重大的突破。在2020年不到一年的时间里&#xff0c;华为HMS生态注册开发者的数量就已经快要突破200万了&#xff0c;如此庞大…