Vs2010连接Mysql数据库方法
下载MySQL 5.5.13 正式版:www.xiazaiba/html/361.html
------------------------------------------- 
操作系统:winxp-32bit 
数据库:MySQL Server 5.5 
    (安装路径:D:\Program Files\MySQL\MySQL Server 5.5) 
IDE: Microsoft Visual Studio 2010 untimate/Professional 
(以上东西都是完整安装的) 
-------------------------------------------
一、VC设置
1、新建一个工程,随便写一个helloworld,目的是就是让工程下的“debug”文件夹出现 
2、把D:\Program Files\MySQL\MySQL Server 5.5\lib下面的libmysql.dll复制到工程的debug文件夹里面 
3、接下来要设置一些引用文件的环境变量,首先,点击项目->属性->vc++目录。 
然后“include目录”那把“D:\Program Files\MySQL\MySQL Server 5.5\include”给加进来 
再然后“lib目录”那里把“D:\Program Files\MySQL\MySQL Server 5.5\lib”也一起加进来
VC6.0设置:
(1)打开VC6.0 工具栏Tools菜单下的Options选项,在Directories的标签页中右边的“Show directories for:”下拉列表中选中“Includefiles”,然后在中间列表框中添加你本地安装MySQL的include目录路径。(我的是D:\Program Files\MySQL\MySQL Server 5.5\include)。
(2)在上面说到的“Show directories for:”下拉列表中选中“Library files”,然后添加你本地安装MySQL的Lib目录路径。Lib目录下有debug目录,选debug。(我的是D:\Program Files\MySQL\MySQL Server 5.5\lib\debug)。
4、然后在项目->属性窗口下点击:连接器->输入->附加依赖项,把"libmysql.lib"写进去
VC6.0设置:在“Project settings->Link:Object/library modules”里面添加“libmysql.lib”。
使用VC++编译时再添加以下项:
5、在stdafx.h里面添加如下的内容: 
#include "mysql.h"
#include "winsock.h" // 如果编译出错,则把该行放到#include "mysql.h"之前#pragma comment(lib,"libmySQL.lib") // 如果在附加依赖项里已增加,则就不要添加了
二、数据库的相关操作
1、打开“开始->所有程序->MySQL->MySQL Server 5.5->MySQL Command ”,如果有密码就输入密码,没有设置密码就直接按回车,会提示服务器启动成功。
2、显示所有的数据库
mysql> show databases;注意一定要 敲“;”后再按回车
3、创建数据库mydb
mysql> create database mydb;
4、选择你所创建的数据库mydb
mysql> use mydb;
5、显示数据库中的表
mysql> show tables;
mysql下载下来是一个文件夹
因为是新创建的数据库,所以为空
6、创建一个表
mysql> create table tettable (id int(3) auto_increment not null primary key,time datetime,name char(10) not null,address varchar(20),year date,s1 char(11) ,s2 int default ‘1’ )
注:在建表中: 
(1)将ID设为长度为3的数字字段:int(3)并让它每个记录自动加一:auto_increment并不能为空:not null,而且让他成为主字段primary key。
      (2)将time设为日期时间字段。 
(3)将NAME设为长度为10的字符字段。并不能为空:not null 
(4)将ADDRESS设为长度20的字符字段,而且缺省值为深圳。varchar和char有什么区别呢,只有等以后的文章再说了。 
(4)将YEAR设为日期字段。
      (5)将S1设为长度为11的字符字段
      (6)将S2设为数字字段int,而且缺省值为1
7、显示表的结构 
mysql> describe testtable;
8、实现添加数据到表
mysql> insert into testtable values('1','2010-10-08', 'bj','深圳一中','2010-10-08','MySQLTest',20);
mysql> insert into testtable values('2','2010-10-08', 'jj','深圳二中','2010-10-08','MySQLTest2',20);
9、显示表中的记录
mysql> select * from testtable;
mysql>  select * from testtable where name  = “bj”;
10、实现修改功能
mysql>  update testtable set address =  "桃园县一中" where name  = "jj";
mysql> select * from testtable;
11、实现删除功能
mysql> delete from testtable where name  = "jj";
mysql> delete from testtable where id>4;
mysql> delete from testtable where id>4 and id<9;
12、删库和删表: 
drop database 库名; 
drop table 表名;
13、将表中记录清空: 
delete from 表名;
14、将文本数据转到数据库中
1、文本数据应符合的格式:字段数据之间用tab键隔开,null值用\n来代替. 
例: 
3 1976-10-10 rose 深圳二中 1976-10-10 mysql1 22 
4 1976-10-10 mike 深圳一中 1975-12-23 mysql2 24
2、数据传入命令 load data local infile "文件名" into table 表名; 
注意:你最好将文件复制到\mysql\bin目录下,并且要先用use命令打表所在的库 。
15、备份数据库:(命令在DOS的\mysql\bin目录下执行)
mysqldump --opt 数据库或表名 -u root -p密码 > F:\mydb.bbb
mysqldump --opt mydb -u root -p111 > F:\mydb.sql 
注释:将数据库mydb备份到F盘mydb.bbb文件,mydb.sql是一个文本文件,文件名任取,打开看看你会有新发现。-u后空格,指定用户名,必需,-p指定密码,注意后面直接跟密码不能空格,如果不填密码,再在后面输入即可。
16、导入数据库
从e:\MySQL\mydb2.sql中将文件中的SQL语句导入数据库中:
1.从命令行进入MySQL,然后用命令CREATE DATABASE mydb2;创建数据库mydb2。
2.退出MySQL 可以输入命令exit;或者quit;
3.在CMD中输入下列命令:
c:\>MySQL -h localhost -u root -p mydb2 < e:\MySQL\mydb2.sql
17、MySql密码修改
格式:mysqladmin -u用户名 -p旧密码 password 新密码
1、给root加个密码ab12。首先在DOS下进入目录mysql\bin,然后键入以下命令
    mysqladmin -u root -password ab12
    注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
2、再将root的密码改为djg345。
    mysqladmin -u root -pab12 password djg345
(注意:和上面不同,下面的因为是MYSQL环境中的命令,所以后面都带一个分号作为命令结束符)
3、命令行修改root密码:
    >use mysql 
    >update user set password=password(”djg345”) where user=”root”; 
    >flush privileges; 
  重新杀 MySQL ,用正常方法启动 MySQL 。
4、显示当前的user:
  mysql> SELECT USER();
MYSQL增加用户
命令方式的.注意每行后边都跟个; 表示一个命令语句结束.
格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码"

例1、增加一个用户user密码为1234,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MYSQL,然后键入以下命令:
grant select,insert,update,delete on *.* to user@"%" identified by "1234";
但例1增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet
上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见例2。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。