为了账号安全,请及时绑定邮箱和手机立即绑定

与MySQL的零距离接触

平然 学生
难度入门
时长 8小时29分
学习人数
综合评分9.67
950人评价 查看评价
9.9 内容实用
9.6 简洁易懂
9.5 逻辑清晰
  • 初涉MySQL——操作数据库 一、数据库创建:CREATE 1、语法:CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [DEFAULT] CHARACTER SET [=] charset_name. 2、DATABASE和SCHEMA是相同的,任选其一 3、IF NOT EXISTS:如果创建的数据库存在,则不只报出warning,不写会报错 4、CHRARCTER SET gbk:为表设置编码方式,如果不设置则用mysql默认的编码方式 二、查看数据库列表:SHOW 1、SHOW { DATABASE | SCHEMAS } [LIKE 'pattern' | WHERE expr] 2、SHOW CREATE DATABASE xx:显示xx数据库信息 三、数据库的修改:ALTER 1、修改数据库编码方式:ALTER { DATABASE | SCHEMAS } [db_name][DEFAULT] CHARACTER SET [=] charset_name 四、删除数据库:DROP 1、删除数据库:DROP { DATABASE | SCHEMAS } [IF EXISTS] db_name; mysql -uroot -proot prompt \D --修改mysql操作符为当前日期 show databases --展示所有数据库 create database if not exists t1 character set gbk; --创建数据库 show create database t1; --展示数据库t1的创建命令和编码形式 --修改数据库编码格式 alter database t2 character set =utf8; --删除数据库 drop database if exists t1; --展示警告信息 show warnings;
    查看全部
    43 采集 收起 来源:操作数据库

    2015-05-18

  • 数据类型 整型 (tinyint smallint mediumint int bigint) 浮点型 (FLOAT{[M,D]},DOUBLE{[M,D]})M:总位数,D:小数点后位数 日期 (YEAR DATE TIME TIMESTEMP) 字符型 (CHAR VARCHAR TEXT) DOS 界面连接数据库 mysql -u用户名 -p密码 -hHOST 显示数据库 SHOW DATABASES; 显示表结构 SHOW COLUMNS FROM table; 显示所有表 SHOW TABLES; 进入数据库 USE 数据库; 创建数据库 CREATE DATABASE 库名; 创建表 CREATE TABLE 表名(字段及信息); 插入数据 INSERT INTO table []VALUES();[]为空说明插入全部的值 查询数据 SELECT 字段 FROM table WHERE 条件 自增自动编号 auto_increment 主键约束 primary key(有auto_increment的一定是主键,主键不一定有auto_increment) 唯一约束 unique key 默认约束 default 当没有赋值时则自动添加默认值
    查看全部
    21 采集 收起 来源:总结

    2015-03-05

  • FOREIGN KEYp:保持数据一致性,完整性;实现一对一或一对多关系。 要求:父表和子表必须使用相同的存储引擎,而且禁止使用临时表;数据表的存储引擎只能为InnoDB;外键列和参照列必须具有类似的数据类型。其中数字的长度或是否有符号位必须相同;而字符的长度则可以不同;外键列和参照列必须创建索引。如果外键列不存在索引的话,MySQL将自动创建索引。 在 MY.ini 文件中编辑默认的存储引擎:default-storage-engine=INNODB; 显示创建表的语句:SHOW CREATE TABLE table_name; 查看表是否有索引:SHOW INDEXS FROM table_name; 以网格查看表是否有索引:SHOW INDEXS FROM table_name\G; Eg: CREATE TABLE table_name1( id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY, name VARCHAR(20) NOT NULL ) CREATE TABLE table_name2( id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY, username VARCHAR(20) NOT NULL, pid SMALLINT UNSIGNED, FOREIGN KEY (pid) REFERENCES table_name1(id) /* 外键 pid 参照 table_name1中的 id 字段 */ )
    查看全部
  • 字符函数<br> 1.CONCAT() ,字符连接<br> SELECT CONCAT('a','-','b'); 结果为:a-b<br> 2.CONCAT_WS(), 使用指定的分隔符进行字符连接<br> SELECT CONCAT_WS('|','A','B','C'); 结果为: A|B|C<br> 3.FORMAT() 数字格式化 SELECT FORMAT(12560.7,2); 结果:12,560.70 SELECT FORMAT(12560.78,1); 结果:12,560.8 4.LOWER() 转换成小写字母 5.UPPER() 转换成大写字母 6.LEFT() 获取左侧字符 SELECT LEFT('mysql',2); 结果:my 7.RIGHT() 获取右侧字符 8.LTRIM() 删除前导空格(=LEFT TRIM()) 9.RTRIM() 删除后续空格 10.TRIM()删除前后两边的空格,还可以删除指定的前导和后续的字符,不能删除中间的字符 SELECT TRIM(LEADING'?','??MYSQL????'); 结果:MYSQL???? SELECT TRIM(TRAILING'?','??MYSQL????'); 结果:??MYSQL SELECT TRIM(BOTH'?','??MYSQL???'); 结果:MYSQL 11.REPLACE() 替换字符 SELECT REPLACE('??MYSQL???','?','-'); 结果:--MYSQL--- 12. SUBSTRING(string,offset,length) 截取字符串 SELECT SUBSTRING('MYSQL',2,3); 结果:SQL 13.[NOT]LIKE 模糊匹配 (%):代表任意个字符,0个或多个 (_):代表任意一个字符,只有一个 SELECT name FROM test WHERE name LIKE'%O%'; 结果:输入name 中带‘O’的name SELECT name FROM test WHERE name LIKE'%1%%' ESCAPE'1'; 找到中间带% 的匹配name
    查看全部
    18 采集 收起 来源:MySQL 字符函数

    2018-03-22

  • 创建带有IN OUT类型参数的存储过程 DELIMITER // CREATE PROCEDURE removerUserAndReturnUserName(IN showID INT UNSIGNED,OUT showName INT UNSIGNED) BEGIN DELETE FROM user WHERE id = showID; SELECT count(ID) FROM user INTO showName; END // SELECT count(ID) FROM user INTO showName; /** 该语句中的 INTO 含义就是将 SELECT 语句结果的表达式返回到 showName 变量中 */ CALL removerUserAndReturnUserName(10,@nums); /** @nums 所代表的就是用户变量,可用 SELECT @nums 输出 */ 用 DECLARE 声明的变量是局部变量,局部变量只能存在于 BEGIN...END 之间,且声明时必须置于 BEGIN...END 的第一行 而通过 SELECT...INTO.../SET @id = 07 这种方法设置的变量我们称之为用户变量,只能存在于当前用户所使用的客户端有效。 CALL rmUserAndRtUserNums(27, @nums); SELECT @nums; //@nums - 就是用户变量 DECLARE声明的变量都是在BEGIN与END之间,是局部变量 SET @i = 7; //通过@或SET设置的变量称为用户变量
    查看全部
  • @MySQL——(二)数据类型与操作数据表——创建数据表 一、数据表 1、数据表(或表)是数据库最重要的组成部分之一,是其他对象的基础 2、表是一个二维表,行称为【记录】,列称为【字段】 二、创建数据表 1、首先打开数据库(数据库要存在): USE 数据库名称 2、创建数据表:CREATE TABLE [IF NOT EXISTS] table_name( column_name(列名称) data_type(列类型), .... ) 举例—— CREATE TABLE tb1( username VARCHAR(20), userage TINYINT UNSIGNED, salary FLOAT(8,2) UNSIGNED, ); UNSIGNED 无符号
    查看全部
  • 多表更新: UPDATE table_references SET col_name1={expr1 | DEFAULT} [,col_name2={expr2 | DEFAULT}]... [WHERE where_condition] INNER JOIN,内连接 在MySQL中,JOIN, CROSS JOIN 和 INNER JOIN 是等价的。 LEFT [OUTER] JOIN ,左外连接 RIGHT [OUTER] JOIN,右外连接 update tdb_goods inner join tdb_goods_cates on goods_cate=cate_name set goods_cate=cate_id; tdb_goods:想要更改的表名 inner join: 内连接 tdb_goods_cates: 关联的附表 goods_cate=cate_name 两个表对应列的关系 goods_cate=cate_id; 设置 值
    查看全部
    15 采集 收起 来源:多表更新

    2015-09-16

  • 1.存储引擎:MyISAM,InnoDB,Memory,CSV,Archive<br> 2.并发控制:<br> 当多个连接对记录进行修改时保证数据的一致性和完整性。系统使用锁系统来解决这个并发控制,这种锁分为: 1).共享锁(读锁)---在同一时间内,多个用户可以读取同一个资源,读取过程中数据不会发生任何变化。 2).排他锁(写锁)---在任何时候只能有一个用户写入资源,当进行写锁时会阻塞其他的读锁或者写锁操作。 3.锁的力度(也叫锁的颗粒) 锁颗粒(锁定时的单位) ---表锁,是一种开销最小的锁策略。得到数据表的写锁 ---行锁,是一种开销最大的锁策略。并行性最大 表锁的开销最小,因为使用锁的个数最小,行锁的开销最大,因为可能使用锁的个数比较多。
    查看全部
  • CASCADE:删除或更新父表中的数据相应的删除或更新子表中的相匹配的行; SHOW CREATE TABLE tb_name;//显示数据表创建时的命令; 创建子表:users1; >CREATE TABLE users( >id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, >username VARCHAR(10) NOT NULL, >pid(外键) SMALLINT(与参照键类型相同) UNSIGNED(与参照键有无符号类型也要相同),//外键的作用体现在这:如果我们要添加一个省份的字段,需要添加个char型的,现在有了关系型数据库,我们只需要存储省份的id即可; >FOREIGN KEY (pid) PREFERENCES provinces (id) ON DELETE CASCADE, >); INSERT provinces(pname) VALUES('A'); INSERT provinces(pname) VALUES('B'); INSERT provinces(pname) VALUES('C'); INSERT users1(username,pid) VALUES('Tom',1); INSERT users1(username,pid) VALUES('Jerry',2); INSERT users1(username,pid) VALUES('Lucy',3); 当删除provinces中的id=3的数据C时,相应的users1中的Lucy也会被删掉,更新的话同样如此; SET NULL://从父表删除或更新行,会设置子表中的外键列为NULL,如果使用该选项,必须保证子表列没有指定NOT NULL RESTRICT://拒绝对父表的删除或更新操作; NO ACTION://标准的SQL语句,在MYSQL当中与RESTRICT相同 实际开发中,我们很少使用物理的外键约束,而是使用逻辑约束;无理的外键约束只有innoDB这种存储引擎才会支持,MYISAM这种引擎就不支持物理的外键约束。反过来说,当我们使用到的引擎为MYISAM时,只能使用逻辑外键(即两个表的设计的逻辑关系)。
    查看全部
  • 字符型 1、CHAR(M):定长类型,比如CHAR(5),如果我们只赋值abc,那么系统会自动在后面补两个空格0——255 2、VARCHAR(M):变长类型,L+1个字节,其中L<=M且0<=M0——65535 3、ENUM('value1','value2'...)枚举值,提供几个选项,选择其中一个,如:性别('男','女','保密') 4、SET('value1','value2'...) 最多64个成员,可以任选里面其中几个,任意排列组合
    查看全部
  • @MySQL——添加/删除列 1、添加单列:如果指定FIRST,则在整个表的最前方,默认不写为整个表的最后方;如果指定AFTER col_name,则在col_name的后面。 ALTER TABLE tbl_name ADD [COLUMN] col_name column_definition [FIRST AFTER col_name] 2、添加多列:无法指定FIRST/AFTER、只能默认为最后方。 ALTER TABLE tbl_name ADD [COLUMN] (col_name column_definition,...) 3、删除单列 ALTER TABLE tbl_name DROP [COLUMN] col_name 4、删除多列(Ps:删除一列的同时,新增一列。其间用逗号隔开) ALTER TABLE tbl_name DROP [COLUMN] col_name, DROP [COLUMN] col_name,DROP [COLUMN] col_name 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
  • 存储引擎 (1)MySQL可以将数据以不同的技术存储在文件(内存)中,这种技术就成为存储引擎。 每种存数引擎使用不同的存储机制、索引技巧、锁定水平,最终提供广泛且不同的功能。 (2)使用不同的存储引擎也可以说不同类型的表 (3)MySQL支持的存储引擎 1. MyISAM 2. InnoDB 3. Memory 4. CSV 5. Archive
    查看全部
  • 1.自定义函数 用户自定义函数(user-defined function, UDF)是一种对MySQL扩展的途径, 其用法与内置函数相同。 自定义函数的两个必要条件: a.参数 b.返回值 函数可以返回任意类型的值,同样可以接受这些类型的参数; 函数的参数与返回值之间,没有必然的联系。 2.创建自定义函数 CREATE FUNCTION function_name RETURNS {STRING|INTEGER|REAL|DECIMAL} routine_body - 函数体 3.关于函数体 (1)函数体由合法的SQL语法构成; (2)函数体可以是简单的SELECT或INSERT语句; (3)函数体如果为复合结构则使用BEGIN...END语句; (4)复合结构可以包括声明,循环,控制结构。
    查看全部
  • MySql语句规范: ①关键字和函数名称全部大写 ②数据库名称、表名称、字段名称全部小写 ③SQL语句必须以分号结尾 常用语句 SELECT VERSION(); 查询当前服务器版本 SELECT NOW(); 查询当前日期时间 SELECT USER(); 查询当前用户
    查看全部
  • 查询表达式 每一个表达式表示想要的一列,必须至少有一个 多个列之间以英文逗号分隔 星号(*)表示所以列 tbl_name.*可以表示命名表的所有列 查询表达式可以使用[As]alias_name为其赋予别名 别名可用于GROUP BY,ORDRE BY或HAVING子句 SELECT 字段出现顺序影响结果集出现顺序,字段别名也影响结果集字段别名。 一、查找记录 1、语法: SELECT select_expr [,select expr2...] 只查找某一个函数或表达式 [ FROM table_references 查询表名 [WHERE where_conditon] 查询条件 [GROUP BY {col_name|position} [ASC|DESC],...] 按某个字段进行分组,相同的只显示第一个 [HAVING where_conditon] 分组时,给出显示条件 [ORDER BY {col_name|expr|position} [ASC|DESC],...] 排序 [LIMIT {[offset,]row_count|row_count OFFSET offset}] 限制返回数量 } 2、查询表达式的顺序会影响结果顺序 每个表达式表示想要的一列,必须有至少一个 多个列直接以英文逗号分隔 星号*表示所有列 3、使用tbl_name.col_name来表示列记录,这多表查询时可以区别开同名的列 4、使用[AS] alias_name为其赋予别名,别名可以用于GROUP BY、ORDER BY或HAVING子句,例如SELECT id AS userId,username AS uname FROM users; 这样查询出来的结果会用别名表示
    查看全部
首页上一页1234567下一页尾页

举报

0/150
提交
取消
课程须知
要想学习本课程,你只需要知道数据库是个什么东东就足够了,是不是很easy?!
老师告诉你能学到什么?
1、MySQL安装与配置 2、数据类型 3、流程控制与运算符 4、DDL、DCL、DQL、DML 5、常用函数 6、表类型(存储引擎) 7、图形化工具

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!