mysql基本操作语句
很多同学在进行编程学习时缺乏系统学习的资料。本页面基于mysql基本操作语句内容,从基础理论到综合实战,通过实用的知识类文章,标准的编程教程,丰富的视频课程,为您在mysql基本操作语句相关知识领域提供全面立体的资料补充。同时还包含 machine_start、macox、magellan 的知识内容,欢迎查阅!
mysql基本操作语句相关知识
-
MySQL基本操作语句小结1、使用SHOW语句找出在服务器上当前存在什么数据库:?mysql> SHOW DATABASES; +----------+ | Database | +----------+ | mysql | | test | +----------+ 3 rows in set (0.00 sec)2、创建一个数据库abccs?1mysql> CREATE DATABASE abccs;注意不同操作系统对大小写的敏感。3、选择你所创建的数据库?12mysql> USE abccsDatabase changed此时你已经进入你刚才所建立的数据库abccs.4、 创建一个数据库表首先看现在你的数据库中存在什么表:?12mysql> SHOW TABLES;Empty set (0.00 sec)说明刚才建立的数据库中还没有数据库表。下面来创建一个数据库表mytable: 我们要建立一个你公司员工的生日表,表的内容包含员工姓名、性别、出生日期、出生城市。?123mysql
-
详解mysql基本操作语句命令1、连接Mysql格式: mysql -h主机地址 -u用户名 -p用户密码1、连接到本机上的MYSQL。首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输密码.注意用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码。如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是: mysql>2、连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令: mysql -h110.110.110.110 -u root -p 123;(注:u与root之间可以不用加空格,其它也一样)3、退出MYSQL命令: exit (回车)2、修改密码格式:mysqladmin -u用户名 -p旧密码 password 新密码1、给root加个密码ab12。首先在DOS下进入目录mysql
-
MySQL数据库基本操作MySQL数据库基本操作—-在命令窗中作CRUD基本操作基于MySQL基本SQL语句(演示)MySQL 与SQLite对比MySQL数据库基本操作—-在命令窗中作CRUD基本操作MySQL是一种关系数据库管理系统,而且是开源软件。 以下操作在安装好MySQL后进行。基于MySQL基本SQL语句(演示)连接数据库mysql -uroot -proot --注意没有分号链接成功后显示:创建数据库create database Learning; --create database 数据库名;创建成功后:Query OK, 1 row affected (0.00 sec)查看所有数据库show databases;--查看所有数据库1+--------------------+| Database &nbs
-
一篇文章,总结MySQL基本操作MySQL的基本操作可以包括两个方面:MySQL常用语句如高频率使用的增删改查(CRUD)语句和MySQL高级功能,如存储过程,触发器,事务处理等。而这两个方面又可以细分如下:MySQL基本操作总结.pngMySQL常用语句表(或者数据库)的CRUD表数据的CRUD,其中表数据查询使用最多,也更复杂。查询可以按照单表还是多表可以分为:单表SELECT查询和多表的联结查询(INNER JOIN, LEFT JOIN, RIGHT JOIN和FULL JOIN)以及组合查询UNION和UNION ALLSQL语句中各个关键字的执行顺序MySQL的高级功能存储过程事务处理触发器1. 表(或数据库)操作语句1.1. 查询表(或数据库)获取所有可用的数据库:SHOW DATABASES;选择数据库:USE customers;用于显示数据库服务器的状态信息:SHOW STATUS;用来显示授权用户的安全权限:SHOW GRANTS;用来显示数据库服务器或警告信息:SHOW ERRORS 或者 SHOW WARNING
mysql基本操作语句相关课程
mysql基本操作语句相关教程
- Django 使用原生的 SQL 语句操作 MySQL 数据库 在 Django 中有两种操作 MySQL 数据库的方式,一种是使用原生的 SQL 语句操作 MySQL,另一种方式就是使用 Django 内置的 ORM 模型完成数据库的增删改查操作。后者是 Django 框架的一个的核心模块,它让开发者对数据库的操作更友好和优雅。
- 2. 什么是 SQL 语句 SQL 是一种语言,一般地,我们会通过书写 SQL 语句的方式来描述数据操作。例如:SELECT first_name FROM person;这条语句会从名为person的数据表中取出所有的first_name字段。SQL 语句是用来操作数据的基本单位,绝大多数情况下,都推荐使用 SQL 语句的方式操作数据库。SQL 语句是核心,后续的章节里,其实就是不断的讲解和实操 SQL 语句。注意:SQL 语句区分大小写每一条 SQL 语句的末尾必须带上分号(;)
- SQL 语句优化 MySQL 的优化主要指 SQL 语句的优化和 MySQL Server 的优化,相对来说,SQL 优化相对更为重要,也更考验功力。本小节将讲解 SQL 语句优化的一般思路,以及相应方法。
- 1.3 实战 python 操作 MySQL 数据库 这里我们将使用前面提到的 mysqlclient 模块来操作 MySQL 数据库。第一步安装 mysqlclient 模块:$ pip3 install mysqlclient -i https://pypi.tuna.tsinghua.edu.cn/simple 安装好了之后,我们可以在 python 解释器中导入下模块:[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linuxType "help", "copyright", "credits" or "license" for more information.>>> import MySQLdb>>> MySQLdb.__version__'1.4.6'>>> 我们事先准备好了一个 MySQL 服务, 部署在云服务器上。本地安装好 mysql 客户端,然后通过如下方式连接 MySQL 数据库:[shen@shen ~]$ mysql -h 180.76.152.113 -P 9002 -u store -pstore.123@mysql: [Warning] Using a password on the command line interface can be insecure.Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 68920Server version: 5.7.26 MySQL Community Server (GPL) Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> 新建一个数据库,名为 django-manual,然后在该数据库中新建了一个简单的 user 表。接下来我们会使用 mysqlclient 模块对该 user 表中的数据进行增删改查操作:mysql> create database django_manual default charset utf8;Query OK, 1 row affected (0.14 sec)mysql> use django_manualDatabase changedMySQL [django_manual]> show tables;Empty set (0.00 sec)mysql> CREATE TABLE `user` ( -> `id` int(11) NOT NULL AUTO_INCREMENT, -> `name` char(30) NOT NULL, -> `password` char(10) NOT NULL, -> `email` char(30) NOT NULL, -> PRIMARY KEY (`id`) -> ) ENGINE = InnoDB AUTO_INCREMENT = 10 CHARSET = utf8;mysql> show tables;+-------------------------+| Tables_in_django_manual |+-------------------------+| user |+-------------------------+1 row in set (0.00 sec)来看看如和使用 mysqlclient,模块操作数据库 django-manual。>>> import MySQLdb>>> conn = MySQLdb.connect(host='180.76.152.113', port=9002, user='store', passwd='store.123@', db='django_manual') # 连接数据库>>> sql = "insert into user(`name`, `password`, `email`) values ('test', 'xxxxxx', '222@qq.com')" # 插入数据的sql语句>>> cur = conn.cursor() # 获取游标>>> cur.execute(sql) # 执行sql语句1 >>> conn.commit() # 提交操作# commit 成功后,去另一个窗口查看 mysql 中的数据库数据mysql > select * from user;+----+------+----------+------------+| id | name | password | email |+----+------+----------+------------+| 10 | test | xxxxxx | 222@qq.com |+----+------+----------+------------+1 row in set (0.00 sec)这里我们可以看到 mysqlclient 模块中的几个常用方法:MySQLdb.connect() 方法:连接 mysql 数据库,会在这里输入 mysql 服务地址,开放端口,用户名和密码以及要使用到的数据库名;conn.cursor():创建游标,固定做法;cur.execute():通过游标的 execute() 方法可以执行 sql 语句,其返回值表示的是操作的记录数,比如这里我们新增了一条记录,返回的值为1;conn.commit():对于数据库有更新的动作,比如新增数据、修改数据和删除数据等,最后需要使用 commit() 方法提交动作,而对于查询操作而言则不需要。如果想自动 commit 动作,也是有办法的:>>> conn = MySQLdb.connect(...)>>> conn.autocommit(True)>>> ...上面是新增单条记录,我们也可以新增多条记录,操作如下:>>> # 在前面的基础上继续执行>>> conn.autocommit(True) # 设置自动提交>>> cur = conn.cursor()>>> data = (('user%d' % i, 'xxxxxx', '28%d@qq.com' % i) for i in range(10))>>> cur.executemany('insert into user(`name`, `password`, `email`) values (%s, %s, %s);', data)10# 在另一个窗口,可以看到 user 表中的记录已经有11条了select count(*) from user;+----------+| count(*) |+----------+| 11 |+----------+1 row in set (0.00 sec)这里插入多条数据,使用的是游标的 executemany() 方法。如果在插入多条记录中遇到异常,需要执行回滚动作,一般写法如下:conn = MySQLdb.connect(...)try: # 执行动作 ...except Exception as e: conn.rollback()此外,我们一般用到的比较多的是查询相关的操作。这里有游标的方法:fetchone():只取一条记录,然后游标后移一位;fetchmany():取多条记录,参数为获取的记录数,执行完后游标移动相应位置;fetchall():取出 sql 执行的所有记录,游标移动至末尾;下面我们用前面生成的 11 条记录来进行操作:>>> # 假设前面已经获得连接信息conn和游标cur>>> sql = 'select * from user where 1=1 and name like "user%"'>>> cur.execute(sql)10>>> data1 = cur.fetchone()>>> print(data1)(11, 'user0', 'xxxxxx', '280@qq.com')# 看到再次获取一条记录时,取得是下一条数据>>> data2 = cur.fetchone()>>> print(data2)(12, 'user1', 'xxxxxx', '281@qq.com')# 这次获取5条数据,从user2开始>>> data3 = cur.fetchmany(5)>>> print(data3)((13, 'user2', 'xxxxxx', '282@qq.com'), (14, 'user3', 'xxxxxx', '283@qq.com'), (15, 'user4', 'xxxxxx', '284@qq.com'), (16, 'user5', 'xxxxxx', '285@qq.com'), (17, 'user6', 'xxxxxx', '286@qq.com'))# 最后用fetchall()方法获取最后的所有数据,还剩下10-1-1-5=3条记录>>> print(data4)((18, 'user7', 'xxxxxx', '287@qq.com'), (19, 'user8', 'xxxxxx', '288@qq.com'), (20, 'user9', 'xxxxxx', '289@qq.com'))# 游标指向最后位置,再次获取时已经没有数据了>>> data5 = cur.fetchone()>>> print(data5)None通过上面的代码演示,我想我们应该理解游标的作用了,就是每执行一次 fetch 函数,对应的游标会向后移动相应位置。
- 2.2 基于位置恢复 以下是基于位置恢复的操作步骤:1. 执行如下 mysqlbinlog 命令:[mysql@localhost ~]$ mysqlbinlog --start-datetime="2020-07-23 11:55:00" --stop-datetime="2020-07-23 12:05:00" mysql-bin.000021 > /tmp/temp_restore.sql从 temp_restore.sql 找到误操作语句前后的位置号为 383 和 437:2. 恢复备份文件,使用 binlog 日志跳过故障语句的位置号,完成恢复。[mysql@localhost ~]$ mysql -uroot -p tempdb < /tmp/db_tempdb.sqlEnter password: [mysql@localhost ~]$ mysqlbinlog --stop-position="383" mysql-bin.000021 | mysql -uroot -p tempdbEnter password:[mysql@localhost ~]$ mysqlbinlog --start-position="437" mysql-bin.000021 | mysql -uroot -p tempdbEnter password:
- 2.1 条件语句 顾名思义,就是满足特定条件执行对应操作,按照顺序从上到下,条件语句 if 通常需要与 test 命令配合使用,当满足条件则执行 then 后的 command,否则继续往下运行执行对应的 command,条件语句 if 是 Shell 编程中最基础的条件判断流程语句。2.1.1 单分支 if 语句顾名思义就是只有一个 if 语句块包含的语句,condition 为正确则执行 then 内的命令,语法:if conditionthen command1 command2 ... commandN fi对于 sshd 进程是否存在,可以使用单分支 if 语句来判断,例如:if [ $(ps -ef |grep /usr/sbin/sshd|grep -v grep|wc -l) -eq 1 ];then echo "sshd server exist"fi2.1.2 双分支 if 语句多分支 if 语句存在 else 情况,语法:if conditionthen command1 command2 ... commandNelse commandfi统一判断 sshd 服务,可以在 else 中进行一些列操作,例如:if [ $(ps -ef |grep /usr/sbin/sshd|grep -v grep|wc -l) -eq 1 ];then echo "sshd server exist"else service sshd start && echo "启动sshd服务"fi2.1.3 多分支 if 语句顾名思义有多个 if 条件,在此利用 elif 来表示,注意最后有一个 else 结尾。if condition1;then command1elif condition2;then command2 ......elif conditionN,then commandNelse commandfi我们的 linux 系统有多个版本,可以利用多分支 if 语句来进行判断,例如:#! /bin/bashsys_version=$(rpm -q centos-release|cut -d- -f3)if [ $sys_version -eq 6 ];then echo "sysversion is $sys_version"elif [ $sys_version -eq 7 ];then echo "sysversion is $sys_version"else echo "sysversion is ${sys_version}"fi
mysql基本操作语句相关搜索
-
mac osx
machine_start
macox
magellan
malloc
manifest
manifest文件
map
map 遍历
mapreduce编程
maps google com
margin
margin bottom
margin left
margin right
margin top
marginbottom
marginheight
marginleft
margintop