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,一经查实,立即删除!

相关文章

java string rt_如何使jvm加载我的java.lang.String而不是rt.jar中的那个

我认真研究了Java类加载器。现在,我想编写一个与rt.jar中的类之一具有相同的包名称和类名称的类。例如,我自己编写一个java.lang.String类,以及如何打破父级委托模型以使jvm加载我的java.lang.String而不是rt.jar中的类。重新编辑Thx&#xf…

php在线语音,PHP在线语音合成

这篇文章主要介绍了PHP在线语音合成,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下在线语音合成 PHP SDKhttp://yuyin.baidu.com/docs/tts/194PHP SDK文档简介Hi,您好,欢迎使用百度语音合成服务。本文档…

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…

php长轮询阻塞,ajax长轮询时php被阻塞

刚接触实时通讯这块&#xff0c;知道用websocket更高效&#xff0c;但我想了解轮询的实现过程&#xff0c;循序渐进短轮询用定时器setInterval已经实现了&#xff0c;但长轮询时后台进入死循环模块导致整个网站的php网页无响应&#xff0c;比如刷新页面、提交消息都没法进行。具…

php隐藏路径ngnix,thinkphp框架在nginx环境下去掉index.php路径显示

协助用户将apache下的一个网站迁移到nginx环境中&#xff0c;结果发现用户用的ThinkPHP框架做的开发&#xff0c;默认用的pathinfo。这是一个很头疼的问题&#xff0c;因为nginx不支持pathinfo&#xff0c;贸然一并打开也担心不安全。于是查询资料后整理如下&#xff1a;找到ap…

php curl 数据采集 空,PHP curl从网站返回空数组的数据

我想写一个PHP脚本来从www.snowbird.com/mountain-report/拉雪和其他数据通过LED阵列显示。我在获取需要的数据方面遇到麻烦。我似乎无法找到使其工作的方法。我能做这项工作吗&#xff1f;还是我需要去使用另一种语言&#xff1f;PHP curl从网站返回空数组的数据以下代码仅返回…

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

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

php config(),php config

PHP 的安装由于php是一个zip文件(非install版)&#xff0c;安装较为基本解压就行。把解压的 php5.2.1-Win32重命名为 php5。并复制到安装盘目录下。例如安装路径为 c:\php51 找到php目录下的 php.ini-dist或 php.ini.recommended文件&#xff0c;重命名为 php.ini,并复制到系统…

functions.php 在哪,functions.php常用函数

在设计WordPress主题时&#xff0c;在functions.php文件里添加一套通用的自定义函数将会大大提高开发效率&#xff0c;这样就不必每次开发主题时都需先查找然后复制同样的函数。这里记录一些常用的函数&#xff0c;方便以后使用&#xff01;给头部添加feed链接WordPress2.8以后…

java基本数据类型存储,JAVA - 基本数据类型的存储空间长度

1.整型类型 存储需求 bit数 取值范围 备注byte 1字节 1*8 &#xff0d;128&#xff5e;127short 2字节 2*8 &#xff0d;32768&#xff5e;32767int 4字节 4*8 (-2的31次方到2的31次方-1)long 8字节 8*8 (-2的63次方到2的63次方-1) 长整型数值后缀为LJAVA 没有无符号类型JAVA中…

matlab回调函数,matlabGUI回调函数介绍.pptx

matlabGUI回调函数介绍GUI开发环境的常用工具与回调函数和GUI程序文件GUI开发常用工具1、控件面板2、对象对齐工具3、对象浏览器4、tab顺序编辑器5、属性编辑器6、菜单编辑器7、M文件编辑器回调函数回调函数是控件接收到用户的操作时调用的特定函数&#xff0c;每个回调函数都是…

余额交易查询 php,深圳通余额查询的API

深圳通余额查询的API&#xff0c;可以通过深圳通号码查询到余额及卡有效期等信息。 用到Domxpath和Curl两方面的知识。 源码已托管到github&#xff0c;另外要加载个类&#xff1a;myclass 项目地址&#xff1a;https://github.com/skiy/dev 演示&#xff1a;http://api.oupag.…

食饵捕食者模matlab,几类食饵-捕食者模型的定性分析和数值模拟

摘要&#xff1a;生态问题一直是人们普遍关注的问题,特别是生态问题中的食饵-捕食者模型,则处于举足轻重的位置。如何更有效的控制、调节生物种群,使之保持良性发展,则具有非常重要的生态意义和应用价值。解决这类问题的主要工具是种群动力学模型,解决的依据是数学的理论和方法…

数组填充php,php数组入门教程之数组填充

本文介绍下&#xff0c;有关php数组之数组填充的一个例子&#xff0c;有需要的朋友参考下。在php编程中&#xff0c;对数组元素进行填充&#xff0c;可以使用array_fill()函数。来看下面的例子&#xff0c;array_fill()函数——填充数组函数&#xff1a;";print_r ($array…

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

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

matlab 排序点,matlab如何进行排序?

来自SORT的MATLAB文档&#xff1a;If A has complex entries r and s,sort orders them according to thefollowing rule: r appears before s insort(A) if either of the followinghold:abs(r) < abs(s)abs(r) abs(s) and angle(r) < angle(s)换言之&#xff0c;具有复…

matlab不同调制方式下性能比较,用不同调制方式实现跳/扩频混合通信的抗干扰性能...

论文写作指导&#xff1a;请加QQ229366758摘要&#xff1a;介绍了BPSK&#xff0c;QPSK&#xff0c;16PSK&#xff0c;FSK&#xff0c;MSK及GMSK 6种数字调制方式的特点&#xff0c;采用Matlab中的Simulink建立了各种调制方式实现DS/FH混合扩频系统的仿真模型。重点研究了跳/扩…

matlab cd参数,MATLAB变量参数列表​

默认值default value对于用户没有传递参数值时给函数进行自动赋给该参数的值​比如上述的例子中&#xff0c;阻尼系数&#xff0c;用户通常不清楚&#xff0c;可以由系统给出更为合适。怎么做到呢&#xff1f;​可以结合MATLAB的一个函数nargin&#xff0c;它能给出函数输入参数…