Mysql 闲杂问题聚集

来源:互联网 发布:淘宝直播大v通道 编辑:程序博客网 时间:2024/05/01 15:57

1、where 条件是 从左向右执行吗 ?

      答:是的  。所有过滤较多数据的条件应该写在左边 。 Oracle 刚好相反


2、如何进行汉语排序 ?

      答: mysql :select * from Table order by convert(column USING gbk) COLLATE gbk_chinese_ci asc

              oracle :nlssort(column,'NLS_SORT=SCHINESE_PINYIN_M')


3、大数据结构blob,clob 如何与java字段对应

      答:blob是二进制大数据 ,与 byte[]对应 ,适合存储音频文件,而clob表示的是文本大数据,与String对应。


4、创建表的时候,double与numberic的区别

      答 :double、float保存的是近似值,而numberic与decimal是用字符串形式保存的精确值。


5、你会 存储过程吗 ?

      答 :   不会  。  re : you  are out !


6、谈谈悲观锁与乐观锁 。

      答 : 悲观锁 :事务A每次去使用数据都会认为他人可能会更新这条数据,于是,每次操作前都上锁,操作完才释放锁  ,适合更新操作多的情况

               乐观锁 :  每次去操作数据都认为他人不会操作数据,不上锁 。仅仅是再次使用时,会通过版本号与之前的那个版本是否一致  。 适合更新操作少的情况

               上面的使用数据,代表 增删查改


7、谈谈2段锁协议  ,共享锁与排他锁

     答:

      2段锁协议 :a、事务在对数据进行读、写操作的时候,必须要先获得锁 (加锁);b、事务在释放锁后,不再具有其他任何封锁。

      共享锁  : 又称为读锁,一个事务对数据A加了读锁,另外一个事务也能对该数据添加读锁

      排他锁  : 又称为写锁,一个事务对数据A加了写锁,另外一个事务则不能对该事务加任何锁


8、给数据库新增带default值的字段 ,老数据是否有默认值?

      答 :1、如果新增字段没有is not null 限制, 那么 数据库存储与查询出来的老数据结果都是默认值,但是执行很慢,DBA不建议

             2、如果新增字段有is not null 限制,那么 oracle 数据库存储null,查询结果为默认值。 mysql 数据库存储与默认值都为默认值。

     


0 0