mysql機能テスト
4938 ワード
詳細
一、変数の定義
二、トランザクションの開始とトランザクションのコミット、トランザクションのロールバック、トランザクションの開始を予定している場合は、自動コミットを0に設定し、start transaction;commit;
三、データベースの三大特性:原子性、一致性、隔離性、持続性
四、取引の独立性レベル(取引のある業務のデータに対してのみ使用する):
五、データベースの共有ロックと排他ロック
六、外部キーは削除できません.まず外部キーを削除しなければなりません.対応するインデックスを削除します.
七、フィールドの追加と削除
八、NULL問題
九、show full プロセスリスト
十、mysql日付時間関数の処理
十一、マルチテーブル関連の更新と削除
一、変数の定義
:set @num=1; set @num:=1; // , @num
:select @num:=1; select @num:= from where ……
:
1)set @t_error=0; select @t_error ;
2)select @num:=`name` from sys_area where id=2 ; select @num;
二、トランザクションの開始とトランザクションのコミット、トランザクションのロールバック、トランザクションの開始を予定している場合は、自動コミットを0に設定し、start transaction;commit;
# 1 0
select @@autocommit;
#
set @@autocommit=0;
start transaction ;
insert into dic(name ) values('1');
insert into dic(name ) values('2');
ROLLBACK;
commit;
三、データベースの三大特性:原子性、一致性、隔離性、持続性
,
四、取引の独立性レベル(取引のある業務のデータに対してのみ使用する):
Read Uncommitted( ),Read Committed( ),Repeatable Read( ),Serializable( )
1)
select @@tx_isolation;
2)
select @@global.tx_isolation;
3)
set session transaction isolatin level repeatable read;
4)
set global transaction isolation level repeatable read;
五、データベースの共有ロックと排他ロック
,
SELECT * FROM information_schema.INNODB_TRX ;
SELECT * FROM information_schema.INNODB_LOCKS;
id=1 , ,
id=1 , , ,
, ,
:
select @@autocommit;
#
set @@autocommit=0;
set @t_error=0;
select @t_error ;
start transaction ;
select * from dic for update ;
insert into dic(name ) values('1');
insert into dic(name ) values('2');
ROLLBACK;
commit;
六、外部キーは削除できません.まず外部キーを削除しなければなりません.対応するインデックスを削除します.
#
show create table
#
alter table drop FOREIGN KEY ;
# ,
show index from ;
alter table drop index FK_cv98jak92idoqj8rrlyhkghv0 ;
七、フィールドの追加と削除
alter table drop column cluster_num
alter table add cluster_num int comment ' ';
八、NULL問題
SELECT 1 = NULL, 1 <> NULL, 1 < NULL, 1 > NULL;
九、show full プロセスリスト
(select * from information_schema.processlist where host like '%11.168.2.65%')
1)Sleep
, ,sleep
( initialSize, initialSize=10 10 sleep , ),
:
0.1 , 1 , 0.1 , close ,
, , sleep
2)Locked
, innodb locked
3)Copy to tmp table
, , i/o Copy to tmp table ,
, , , kill
4)Sending data
Sending data , , , ,
sending data , ,
5)Storing result to query cache
, set profiling , SQL ( , ),
query cache , flush query cache ,Query cache
十、mysql日付時間関数の処理
date_format(date, format) ,MySQL date_format()
unix_timestamp( ) ,Mysql unix
str_to_date(str, format) ,
from_unixtime(unix_timestamp, format) ,MySQL from_unixtime
select DATE_FORMAT(now(),'%Y-%m-%d' )
select str_to_date('2017-12-08 00:00:00', '%Y-%m-%d %H:%i:%s' )
select unix_timestamp( DATE_FORMAT(now(),'%Y-%m-%d' ) )*1000 ;
select unix_timestamp( str_to_date('2017-12-08 00:00:00', '%Y-%m-%d %H:%i:%s' ) )*1000 ;
select from_unixtime( unix_timestamp( DATE_FORMAT(now(),'%Y-%m-%d' ) ),'%Y-%m-%d %H:%i:%s' ) ;
十一、マルチテーブル関連の更新と削除
#
update user a join user_ext b on a.uid=b.id
set b.name=a.name, b.age=a.age
where ifNULL(a.business_ip,'')<>ifNULL(b.new_business_ip,'')
# h
delete h.*
from user g join user_ext h on g.id=h.userId
where g.id=1
in exist :
http://www.manongjc.com/article/981.html