Mysql基础知识

1.mysql的启动与停止

启动:net start mysql
停止:net stop mysql

2.命令行登录Mysql

mysql -u root -p
passowrd:******
status; 查看运行环境

3.mysql修改表名,列名,列类型,添加表列,删除表列

alter table test rename test1; --修改表名
alter table test add column name varchar(10); --添加表列
alter table test drop column name; --删除表列
  1)alter table test modify address char(10) --修改表列类型
||2)alter table test change address address char(40)
alter table test change column address address1 varchar(30)--修改表列名  


注意truncate关键字
TRUNCATE TABLE t 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。
但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。
   DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。
TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。
TRUNCATE TABLE 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。
如果想保留标识计数值,请改用 DELETE。
如果要删除表定义及其数据,请使用 DROP TABLE 语句。


4.一条SQL删除数据库中重复的记录(id重复); 

delete from table_name where table_name.rowid not in ( select max(rowid) from table_name group by id );  

5. 备份数据库

mysqldump --opt school>school.bbb
注释:将数据库school备份到school.bbb文件,school.bbb是一个文本文件,文件名任取,打开看看你会有新发现。
1.导出整个数据库
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u root -p aikersql> aiker.sql
2.导出一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u aiker -p aikersql users> aiker_users.sql
3.导出一个数据库结构
mysqldump -u root -p -d --add-drop-table aikersql>d:/aiker_db.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
4>导入 导出 数据库
常用source 命令
进入mysql数据库控制台,如mysql -u root -p
mysql>use 数据库
1)然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
2)mysql> LOAD DATA LOCAL INFILE '/path/pet.txt' INTO TABLE pet (如这里用到的.txt) 若希望导入过程忽略对外键的检查,set @@foreign_key_checks=0;
      -> LINES TERMINATED BY '\r\n';
  (在运行OS X的Apple机上,应使用行结束符'\r'。)
3)1导出整个数据库
 mysqldump -u 用户名 -p 数据库名 > 导出的文件名 如:mysqldump -u root -p cj>test.sql (压缩文件 test.sql.gz)
  2.导出一个表
 mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名 如:mysqldump -u root -p cj test>test.sql
  3.导出一个数据库结构
 mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:\wcnc_db.sql
 -d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
  4.导入数据库或表 mysql -u root -p cj<backupfile.sql
 
  5.导出表数据:select * into outfile 'd:/mysql.txt' from tt;

mysql>source d:/aiker_db.sql

5.编码问题

1.显示variable_name的编码:show variables like '%char%';
2.插入中文字符时,先执行:set names gbk;

6.存储过程

1.查看某个数据库下的所有存储过程 : select name from mysql.proc where db='cj';
         或者
         select routine_name from information_schema.routines where routine_schema='数据库名';
         或者
         show procedure status where db='数据库名'
2.查看存储过程的详细: SHOW CREATE PROCEDURE 数据库.存储过程名; show procedure status\G//;
2.新建存储过程: delimiter // createa procedure p_XX() begin .. end ;// 执行:delimitetr ; call p_XX();




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL是一种关系型数据库管理系统,它可以用来存储和管理数据。以下是一些MySQL基础知识: 1. 数据库MySQL中的数据库一个容器,用于存储数据表和其他对象。 2. 数据表:数据表是MySQL中的基本对象,用于存储数据。每个数据表都有一个唯一的名称,并且包含一些列,每列都有一个数据类型。 3. 列:列是数据表中的一个字段,用于存储特定类型的数据。每个列都有一个名称和一个数据类型。 4. 行:行是数据表中的一个记录,包含一组值,每个值都对应一个列。 5. 主键:主键是数据表中的一个列,用于唯一标识每个记录。主键列的值必须是唯一的,并且不能为NULL。 6. 外键:外键是一个列,它引用了另一个表中的主键列。外键用于建立表之间的关系。 7. 索引:索引是一种数据结构,用于加快数据检索速度。MySQL支持多种类型的索引,包括B树索引和哈希索引。 8. 视图:视图是一个虚拟的表,它是由一个或多个数据表的查询结果组成的。视图可以简化复杂的查询,并提高查询性能。 9. 存储过程:存储过程是一种预编译的代码块,它可以接受参数并返回结果。存储过程可以简化复杂的操作,并提高数据库性能。 10. 触发器:触发器是一种特殊的存储过程,它会在数据表上执行特定的操作。触发器可以用于实现数据约束和业务逻辑。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值