存储过程是用户定义的一系列sql语句的集合,涉及特定表或其它对象的任务,用户可以调用存储过程,而函数通常是数据库已定义的方法,它接收参数并返回某种类型的值并且不涉及特定用户表。
Mysql数据库软件是一个客户端或服务器系统,其中包括:支持各种客户端程序和库的多线程SQL服务器、不同的后端、广泛的应用程序编程接口和管理工具。
查看系统信息
show status;
show variables;
show global variables;
show global variables like '%version%';
show variables like '%storage_engine%'; 默认的存储引擎
Mysql服务器的默认端口是3306。
mysql -uroot -p123456 ceshi(数据库名)< ceshi.sql
导入方法二:
use ceshi;
source /root/ceshi.sql
#####7、导出数据库的SQL语句是什么?
mysqldump -u 用户名 -p 数据库名 **>** 导出的文件名
mysql> show warnings; 查看最近一个 sql 语句产生的错误警告
SELECT VERSION();
用于获取当前Mysql的版本。
# vim /etc/my.cnf
[mysqld]
slow_query_log = 1 #开启慢查询日志
slow-query-log-file=/var/lib/mysql/slow.log #这个路径对 mysql 用户具有可写权限
long_query_time=5 #查询超过 5 秒钟的语句记录下来
表格的每一行都由主键唯一标识,一个表只有一个主键。
主键也是候选键。按照惯例,候选键可以被指定为主键,并且可以用于任何外键引用。
我们可以通过以下命令登录:
# [mysql dir]/bin/mysql -h hostname -u
%对应于0个或更多字符,_只是LIKE语句中的一个字符。
不区分
SELECT VERSION(), CURRENT_DATE;SeLect version(), current_date;seleCt vErSiOn(), current_DATE;
所有这些例子都是一样的,Mysql不区分大小写。
LIKE和REGEXP运算符用于表示^和%。
SELECT
* FROM employee WHERE emp_name REGEXP “^b”;SELECT * FROM employee WHERE emp_name LIKE “%b”;
InnoDB,是MySQL的数据库引擎之一,它的特性是支持事务,并且采用多版本并发控制的方式来提高并发度,当一个事务全部完成,才会执行update.如果一段代码没有完成(及一个事务操作没有完成)它是不会update的,例如:银行转帐,一 笔业务没有完成的时候,突然的断电,或是,网络,系统的原因使你无法完成此交易的话,这个事务是要回滚的此交易之前的状态的,没有完成交易,你银行的 money是不会减少的!缺点是,innoDB的表执行起来速度较慢,但是安全!
DISTINCT在所有列上转换为GROUP BY,并与ORDER BY子句结合使用。
SELECT DISTINCT t1.a FROM t1,t2 where t1.a=t2.a;
如果想输入字符为十六进制数字,可以输入带有单引号的十六进制数字和前缀(X),或者只用(Ox)前缀输入十六进制数字。
如果表达式上下文是字符串,则十六进制数字串将自动转换为字符串。
在Mysql中,使用以下代码查询显示前50行:
SELECT FROM LIMIT 0,50;
先查主键,在分页。
select * from tb where id in(select id from tb where limit 10 offset 20)
MyISAM支持表锁,InnoDB支持表锁和行锁,默认为行锁