MYSQL不太熟练的+其他

MYSQL不太熟练的+其他(优缺点等)   
1、执行sql脚本
   恢复数据库:mysql -uroot -p 密码 数据库名 < 备份文件.sql
   (1)未连接数据库:mysql -h localhost -u root -p 123456 < F:\sql\user.sql(注意路径不加引号)
   (2)已连接数据库,source F:\sql\user.sql
    参考:http://www.cnblogs.com/kenkofox/archive/2011/01/14/1935422.html


2、TRUNCATE
   TRUNCATE (TABLE) tb;  删除表中的所有数据,不能与WHERE一起使用
   TRUNCATE和DELETE区别
   1、事务:TRUNCATE是不可以ROLLBACK的,但是DELETE是可以ROLLBACK的;
      原因:TRUNCATE是删除整表数据(DDL语句,隐式提交),DELETE是一行一行的删除,可以ROLLBACK;
   2、效果:TRUNCATE删除后将重置水平线和索引(id从零开始),delete不会删除索引
   3、TRUNCATE不能触发任何Delete触发器
   4、DELETE删除可以返回行数
   参考:http://www.cnblogs.com/shuaiandjun/p/6042600.html
   
3、COUNT(1)
   和COUNT(*)效果是一样的:对行的数目进行计算,包括NULL
     COUNT(column)对特定的列进行计算,不包括NULL
   性能问题:
   (1)任何情况下SELECT COUNT(*) FROM tablename是最优选择
   (2)尽量减少SELECT COUNT(*) FROM tablename WHERE COL = 'value' 这种查询
   (3)杜绝SELECT COUNT(COL) FROM tablename WHERE COL2 = 'value' 的出现


   如果表没有主键,那么COUNT(1)比COUNT(*)快。
   如果有主键,那么COUNT(主键,联合主键)比COUNT(*)快。
   如果表只有一个字段,COUNT(*)最快。
   COUNT(1)跟COUNT(主键)一样,只扫描主键。COUNT(*)跟COUNT(非主键)一样,扫描整个表。明显前者更快一些。
   参考:http://blog.youkuaiyun.com/lzm18064126848/article/details/50491956
   注:COUNT(NULL) = 0;(在我这边执行报错)


4、LIKE
   %:表示任意个字符。可匹配任意类型和长度的字符。
   _:表示任意单个字符。
  如果真的要查%或者_,用escapse,转义字符后面的%或_就不作为通配符了,注意前面没有转义的%和_仍然
  起通配符作用
  SELECT username
  FROM user
  WHERE username LIKE '%xiao/_%' escapse '/';
  SELECT username
  FROM user
  WHERE username LIKE '%xiao/%%' escapse '/';
  参考:http://blog.youkuaiyun.com/my2010sam/article/details/19109235


5、VARCHAR、CHAR
  (1)CHAR(M) 定长字符串,可能会产生空间浪费问题,但存取速度快,M不能超过255。VARCHAR(M)变长字符串,
       不会产生空间浪费,但存取速度慢,M不能超65535。


6、VARCHAR(50)中50的涵义
   mysql4.0版本以下,varchar(50),指的是50字节,如果存在UTF8汉字时,只能存放16个(每个汉字3字节)。
       mysql5.0版本以上,varchar(50),指的是50字符,无论存放的是数字、字母还是UTF8汉字(每个汉字
       3字节),都可以存放50个。
   
7、INT(M)
    当我们在选择使用INT类型的时候,不论是INT(3)还是INT(11),它在数据库里面存储的都是4个字节的长度。INT(M)其中M指示最大显示宽


 
度。最大的有效显示宽度是255.这里的M代表的


并不是存储在数据库中的具体的长度,认为INT(3)只能存储3个长度的数字,INT(11)就会存储
11个长度的数字,这是大错特错的。在使用INT(3)的时候如果你输入的
10,会默认给你存储010,也就是说这个3代表的是默认的一个宽度,当
你不足3位时,会帮你补全,当你超过3位时,就没有任何的影响。要查看出不同效果记得在创建类型的时候加zerofill这个值,表示用0填充,否则是看不出效果的。
    INT类型数据的字节大小是固定的4个字节;但是INT(5)和INT(11)的区别在于,显示的数据位数一个是5位一个是11位,在开启zerofill
(填充零)情况下,若INT(5)存储的数字长度是小于5的则会在不足位数
的前面补充0,但是如果INT(5)中存储的数字长度大于5位的话,则按照
实际存储的显示(数据大小在INT类型的4个字节范围内即可),也就是
说INT(M)不代表数据的长度。
    总结:
    int(M)M表示的不是数据的最大长度,只是数据宽度,并不影响存储多少位长度的数据;varchar(M)M表示的是varchar类型数据在数据库中存储的最大长度,超过则不存。 


8、MYSQL数据库的特点有哪些?
   (1)MYSQL是一个关系数据库管理系统,把数据存储在表格中,使用标准的结构化查询语言-SQL访问数据库;
   (2)MYSQL是完全免费的,在网上可以任意下载,并且可以查看到
它的源文件,进行必要的修改;
   (3)MYSQL服务器的功能齐全,运行速度很快,十分可靠,有很好
的安全感;
   (4)MYSQL服务器在客户机,服务器嵌入系统中使用,是一个客户机/服务器系统,能够支持多线程,支持不同的客户程序和管理工具;
   (5)MYSQL是一个小型关系型数据库管理系统,开发者为瑞典MYSQLAB公司,现在已经被Sun公司收购,后来Sun公司被ORACLE公司收购,支持FreeBSD、Linux、MAC、Windows等多种操作系


统。与其他的大型数据库例如Oracle、DB2、SQL Server等相比功能稍弱一些。


6、MYSQL优点(相比其他数据库)
   (1)可以处理拥有上千万条记录的大型数据;
   (2)支持常见的SQL语句规范;
   (3)可移植性高,安装简单小巧;
   (4)良好的运行效率,有丰富信息的网络支持;
   (5)调试、管理,优化简单(相对其他大型数据库)。


7、MYSQL、ORACLE、SQLSEVER


8、LEFT JOIN ... ON(ON总是写成WHERE)


9、PHP语言优缺点


10、PHP、JAVA、...


11、JS语言优缺点


12、Angular JS是谁开发?第几个版本了?2和3区别?


13、为什么用Angular JS?用2还是3?


14、为什么选择这种技术?渊源等


15、理论知识—走的更远  项目—经验


上面大多都是借鉴,当这些知识融入自己时,才算真正掌握呀。


优缺点、版本、发展史...(避免懵逼,考验深度)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值