4.MySQL连接并选择数据库(SQL C)
在连接了MySQL数据库之后,可以通过SQL命令或者C、PHP、JAVA等程序来指定需要操作的数据库。这里主要介绍SQL命令和相应的C程序。
首先创建用户rick(赋予所有权限)
mysql> grant ALL ON *.* TO rick@localhost IDENTIFIED BY 'rick123'
然后给rick用户创建两个数据库
mysql> \q # mysqladmin -u rick -p create foo;# mysqladmin -u rick -p create foo2;
1.SQLl命令
实例,选择数据库foo
root@deamon-H55M-S2:/# mysql -u rick -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 15 Server version: 5.7.16-0ubuntu0.16.04.1 (Ubuntu)Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> use foo; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -ADatabase changed
2.C程序
相关函数:MYSQL *mysql_init(MYSQL *mysql) 该函数初始化一个适合用于mysql_real_connect的连接句柄结构
MYSQL *mysql_real_connect(MYSQL *mysql,
const char *host,
const char *user,
const char *passwd,
const char *db,
unsigned int port,
const char *unix_socket,
unsigned long client_flag);//连接数据库
MYSQL *mysql_close(MYSQL *mysql) //关闭连接,通常在程序结束退出时,需要调用该函数进行关闭。
如果mysql是一个空指针,mysql_init函数会分配、初始化以及返回一个新的句柄结构,否则mysql会被重新初始化,并返回该结构的地址。mysql_init 分配的新结构会在调用mysql_close()时被释放。
例程:
#include<stdio.h> #include<stdlib.h> #include<mysql/mysql.h> int main() {MYSQL my_connect;mysql_init(&my_connect); //以rick的身份连接数据库,并选择使用数据库foo;if(mysql_real_connect(&my_connect,"localhost","rick","rick123","foo",0,NULL,0))printf("Connect success\n");elseprintf("Connect failed\n");//选择数据库foo2;if(!mysql_select_db(&my_connect,"foo2"))printf("Select Database success\n");elseprintf("Select Database failed\n");}
编译程序:
gcc -I/usr/include/mysql select_db.c -L/usr/lib/mysql -lmysqlclient -o select_db
最后执行程序
./select_db Connect success Select Database success
注意:如果编译的时候显示mysql.h找不到,那么需要安装libmysqlclient-dev
对Ubuntu,Debian等 apt-get install libmysqlclient-dev 对Centos等 apt-get install libmysqlclient-dev
安装完成后头文件在/usr/include/mysql
转载于:https://www.cnblogs.com/jiandahao/p/6119154.html
4.MySQL连接并选择数据库(SQL C)相关推荐
- linux连接本机mysql数据库,Linux中MySQL连接本机数据库客户端
Linux中MySQL连接本机数据库客户端 Linux中MySQL连接本机数据库客户端 1.登入mysql数据库 2.找到要修改的位置 // 选定要用的数据库(用show databases;看完再u ...
- MySQL中操作关系型数据库 SQL
数据库(database) 常见的数据库: 关系型数据库: SQL server 微软 Oracle oracle (甲骨文) MySQL oracle DB2 IBM SQLIte 安卓 NoSQL ...
- mysql连接池_数据库技术:数据库连接池,Commons DbUtils,批处理,元数据
Database Connection Pool Introduction to Database Connection Pool 实际开发中"获得连接"或"释放资源&q ...
- mysql连接不上数据库
1.打开 DOS 窗口,输入 mysql 连接命令时,提示报错 Cannot connect to MySQL server on 'localhost' (10061),如下图: 2.上面问题原因 ...
- mysql union all sum_[数据库]SQL Server UNION ALL 结果 SUM函数造成精度丢失
[数据库]SQL Server UNION ALL 结果 SUM函数造成精度丢失 0 2020-08-03 18:00:30 SQL Server 数据类型 使用场景: 在进行多维度汇总数据时,需要将 ...
- php连接mysql执行sql语句_php+mysql 连接服务器、数据库以及执行SQL语句的类库
展开全部 我这里有个很好的通用数据62616964757a686964616fe78988e69d8331333262363066库连接类,我就喜欢用这个,试试看. class DB_Handle{ ...
- win7系统mysql连接不上数据库吗_Win7系统使用数据库时mysql频繁掉线无法连接的两种解决方法...
近日有windows7 64位旗舰版系统用户在使用mysql数据库的时候,发现mysql总是频繁掉线,导致无法连接,遇到这样的问题该如何解决呢?接下来为大家带来Win7系统使用数据库时mysql频繁掉 ...
- 连接Azure云数据库SQL Server
因为本科毕设要用到云数据库,华为云.阿里云都要收费,但是Azure(新用户注册12个月免费?),所以采用了Azure云数据库. 且Azure云连接SQL Server十分方便,步骤如下: 1. 登录A ...
- erlang mysql连接超时_Erlang数据库-(一)Erlang与Mysql的连接
下载:http://download.csdn.net/detail/hjhjava/7088277 把该文件的东西全部编译好,然后根据下面的解释就可以操作Mysql的.很简单~ -record(ro ...
最新文章
- java如何监控cpu耗时_超级干货:3个性能监控和优化命令讲解
- [BZOJ] 1634: [Usaco2007 Jan]Protecting the Flowers 护花
- android 弹出一个在桌面上出现的window
- Python之re模块 —— 正则表达式操作
- mysqldump 导出某几张表
- 将Auth0 OIDC(OAUTH 2)与授权(组和角色)集成
- 关于之前的函数式编程
- 在正式使用计算机账务系统的银行对账功能,用友ERP-U8管理系统认证考试理论题...
- python对数组缺失值进行填充
- mac linux win三系统安装教程,【教程】Windows、Linux、MacOS安装adb工具的方法
- 玩转python字典与列表(下)
- NHibernate初学者指南(18):验证单个属性
- Windows10系统的MSDN下载和通过U盘进行安装的步骤(亲测有效)
- 推荐几本数据库基础书
- 加密与解密工具大礼包 2010年新品
- Jellybean 4.1.1 精简列表+谷歌服务包精简列表
- 重装系统后开机启动项菜单如何删除
- CentOS 8 Error: Failed to download metadata for repo ‘appstream‘: Cannot prepare internal mirrorlist
- PDF文件如何快速转换成Word文件?两个方法教你搞定
- 微信小程序开发入门(二)image标签及图片样式