vs2010连接mysql数据库方法

vs2010连接mysql数据库方法
vs2010连接mysql数据库方法

Vs2010连接Mysql数据库方法

下载MySQL 5.5.13 正式版:https://www.360docs.net/doc/0512140086.html,/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 Line Client.exe”,如果有密码就输入密码,没有设置密码就直接按回车,会提示服务器启动成功。

2、显示所有的数据库

mysql> show databases;注意一定要敲“;”后再按回车

3、创建数据库mydb

mysql> create database mydb;

4、选择你所创建的数据库mydb

mysql> use mydb;

5、显示数据库中的表

mysql> show tables;

因为是新创建的数据库,所以为空

6、创建一个表

mysql> create table tettable (id int(3) auto_increment not null primary

key,timedatetime,name char(10) not null,addressvarchar(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,然后键入以下命令:grantselect,insert,update,delete on *.* to user@"%" identified by "1234";

但例1增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见例2。

例2、增加一个用户user密码为1234,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道user的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。

grantselect,insert,update,delete on *.* to user@localhost identified by "1234"; grant select,insert,update,delete on mydb.* to user@localhost identified by "1234";

如果你不想test2有密码,可以再打一个命令将密码消掉。

grantselect,insert,update,delete on *.* to user@localhost identified by ""; grant select,insert,update,delete on mydb.* to user@localhost identified by "";

18、关于排序与选择

1)em_site_access 表信息如下:

2)按字段USER_ID递增排序

select * from em_site_access order by USER_ID; 递增排序

3)按字段USER_ID递减排序,在后面添加desc就行了

select * from em_site_access order by USER_ID desc; 递减排序

4)按字段USER_ID,SITE_CODE递减排序

select * from em_site_access order by USER_ID desc,SITE_CODE desc;

5)选择字段值为SITE_CODE=00060项并按字段USER_ID递增排序

select * from em_site_access where SITE_CODE=00060 order by USER_ID;

6)选择字段值同时满足SITE_CODE=00060和USER_ID=922项

select * from em_site_access where SITE_CODE=00060 and USER_ID=922;

1 linux平台及windows平台mysql重启方法

Linux下重启MySQL的正确方法:

1.启动:/etc/init.d/mysqld start

2.停止:/etc/init.d/mysqld stop

3.重启:/etc/init.d/mysqld restart

启动:# service mysqld start

停止:# service mysqld stop

重启:# service mysqld restart

Windows

1.点击“开始”->“运行”(快捷键Win+R)。

2.启动:输入 net stop mysql

3.停止:输入 net start mysql

* Windows下不能直接重启(restart),只能先停止,再启动。

后记:其实MYSQL的对数据库的操作与其它的SQL类数据库大同小异,最好找本将SQL的书看看。在这里只介绍一些基本的。最好的MYSQL教程还是"晏子"译的"MYSQL中文参考手册"不仅免费,每个相关网站都有下载,而且它是最权威的。(down load here) ">">附件

三、C++编程

#include

#include

#include

#include

#include

int main()

{

//connectionparams

char *host = "localhost";

char *user = "root";

char *pass = "111";//你的mysql服务器密码

char *db = "MySql";

unsignedint port = 3306; //server port

MYSQL *sock;

MYSQL_RES *res;

MYSQL_FIELD * fd;

MYSQL_ROW row;

char szSqlText[500]="";

inti;

inttcreate=0;

sock=mysql_init(0);

if(sock &&mysql_real_connect(sock,host,user,pass,db,0,NULL,0))

{

std::cout<<"connect mysql succeed!"<

//mysql_set_character_set(sock,"utf8");

mysql_query(sock, "set names gb2312");

//mysql_query(sock, "SET NAMES GBK"); //设置编码格式,否则在cmd下无法显示中文

//connectioncharacter set

//waitfor possibility to check system/mysqlmysqlets

if(tcreate)

{

sprintf(szSqlText, "create table datatable (id int(3) auto_increment not null primary key,timedatetime,name char(10) not null,addressvarchar(20),year date,s1 char(11) ,s2 int default '1') CHARACTER SET utf8");//构造SQL语句新建一张表

std::cout<<"Create table tttable!"<

tcreate = 1;

if(mysql_query(sock,szSqlText))//执行Dsql语句,并判断是否出错

{

std::cout<<"can't create table:"<

mysql_close(sock);

return FALSE;

}

}

sprintf(szSqlText,//向mytable这个表插入数据注意时间格式

"insert into datatable values('1','2010-10-08', 'bj','深圳一中

','2010-10-08','MySQLTest',20)");

std::cout<<"Insert data to table!"<

if(mysql_query( sock, szSqlText))

{

std::cout<<"Can't insert data to table"<

return FALSE ;

}

sprintf(szSqlText, "select* from datatable");

std::cout<<"select* from datatable!"<

if(mysql_query( sock, szSqlText))//进行数据检索并检查有无错误

{

mysql_close( sock );

return FALSE ;

}

else

{

std::cout<<"mysql_store_result!"<

res= mysql_store_result( sock) ;//取得查询结果,保存查询到的数据到res i = (int) mysql_num_rows(res ) ;//取得有效记录数

std::cout<<"Query: "<

found:"<

for( i = 0 ; fd = mysql_fetch_field( res ); i++ )//获取列名

std::cout<name<<"\t";

std::cout<

while(row = mysql_fetch_row( res))//获取具体的数据,依次读取各条记录 std::cout<

mysql_free_result( res ); //释放结果资源

}

}

else//连接数据库出错

{

std::cout<<"cannot connect to the sock sever

"<

mysql_close(sock);

return FALSE;

}

mysql_close(sock);//断开连接

system("pause");

return TRUE;

}

关于添加中文后编译出错问题的解决

比如utf8,big5,gb2312.

在 MySQL 4.1 或更新版本,如果你要使用中文,则必须用 UTF-8。你要用 utf8 charset 来建立数据库:

mysql> CREATE DATABASE bugzero_db CHARACTER SET utf8;

或者,如果非utf8 数据库已经建立,你可用alter来改变:

mysql> ALTER DATABASE bugzero_db CHARACTER SET utf-8;

注意,只有没有任何 tables 的情况下,ALTER DATABASE 才有效。

当然,如果 utf8 已经是你mysql server的默认charset,那么,上面步骤就不需要了四、VC编程

MYSQL mysql; //数据库连接句柄mysql_init

(&mysql);if(!mysql_real_connect(&mysql,"localhost","root",NULL,"mydb",3306,NULL ,0)) {//mydb为你所创建的数据库,3306为端口号,可自行设定 AfxMessageBox("数据库连接失败"); return FALSE;}

(1)实现添加功能

CStringstrUsername,strList,strRemark,strSQL;strSQL.Format("insert into

mytable(username,visitelist,remark) values(\'%s\',\'%s\',\'%s\')", strUsername,strList,strRemark);//注意一定要写在一行,而且必须要有

\'\'if(mysql_real_query(&mysql,(char*)(LPCTSTR)strSQL,(UINT)strSQL.GetLength()) !=0){ AfxMessageBox("增添失败"); }

(2)实现修改功能

CStringstrUsername,strList,strRemark,strSQL,str_PreName;//str_PreName用于记录

想要修改的行,详情请看源代码strSQL.Format("update mytable set

username=\'%s\',visitelist=\'%s\', remark=\'%s\' where

username=\'%s\'",strUsername,strList,strRemark,str_PreName);if(mysql_real_query (&mysql,(char*)(LPCTSTR)strSQL,(UINT)strSQL.GetLength())!=0){ AfxMessageBox("修改失败"); }

(3)实现删除功能

CStringstrSQL;strSQL.Format("delete from mytable where

username=\'%s\'",str_PreName);//必须要有

\'\'if(mysql_real_query(&mysql,(char*)(LPCTSTR)strSQL,(UINT)strSQL.GetLength()) !=0){ AfxMessageBox("删除失败"); }

(4)读取表格内容到CListCtrl控件m_list

m_list.DeleteAllItems();char *ch_query;ch_query="select * from

mytable";if(mysql_real_query(&mysql,ch_query,(UINT)strlen(ch_query))!=0){ AfxMe ssageBox("数据库中表格出错"); }CStringstr;MYSQL_RES

*result;MYSQL_ROWrow;if(!(result=mysql_use_result(&mysql))){ AfxMessageBox("读取数据集失败"); }int

i=0;while(row=mysql_fetch_row(result)){str.Format("%s",row[0]);m_list.InsertIte m(i,str);str.Format("%s",row[1]);m_list.SetItemText(i,1,str);str.Format("%s",ro w[2]);m_list.SetItemText(i,2,str);i++;}mysql_free_result(result);

做一些添加:

while (row=mysql_fetch_row(result))

{num=mysql_num_fields(result);

for (int j=0;j

...}

mysql_fetch_row依次获取受影响的行,当结束时返回NULL,mysql_num_fields获取该行的列数。注意,这里的row是char** 类型,即row[i]是char*类型。

(5)关闭数据库

mysql_close(&mysql);//最好写到OnDestroy()函数中

java连接mysql数据库

Java连接MySQL 数据库的正确操作流程 时间:2010-05-25 15:41 来源:博客园字体:[大中小] 以下的文章主要介绍的是Java连接MySQL 数据库(以MySQL数据库为例),我们主要是以MySQL数据库为例讲下Java正确连接MySQL数据库的实际操作流程,以下就是对其详细内容的描述。 当然,首先要安装有JDK(一般是。然后安装MySQL,这些都比较简单,具体过程就不说了。配置好这两个环境后,下载JDBC驱动(这个是最新版的)。然后将其解压缩到任一目录。我是解压到D盘,然后将其目录下的加到classpath里,具体如下: “我的电脑”-> “属性” -> “高级” -> “环境变量”,在系统变量那里编辑classpath,将D:\加到最后,在加这个字符串前要加“;”,以与前一个classpath区分开。然后确定。 环境配置好了,很简单。现在,先配置MySQL,设其用户名为“root”,密码为“root”。在命令行或用一个SQL的前端软件创建Database。 我是用SQLyog的前端软件来创建Database的。 先创接MySQL 数据库: 1.CREATE DATABASE SCUTCS; 接着,创建表: 1.CREATE TABLE STUDENT 2.( 3.SNO CHAR(7) NOT NULL, 4.SNAME VARCHAR(8) NOT NULL, 5.SEX CHAR(2) NOT NULL, 6.BDATE DATE NOT NULL, 7.HEIGHT DEC(5,2) DEFAULT , 8.PRIMARY KEY(SNO) 9.); 然后插入数据,可以用SQL语句insert into <表名> values (value1, value2, ...); 也可以用SQLyog来操作 好了,创建好了。

Java中连接MySql数据库的几种方法

JDBC Java中JDBC定义了java与各种sql数据库之间的编程接口,JDBC API是一个统一的标准应用程序编程接口,这样可以屏蔽异种数据库之间的差异。 JDBC的工作原理 JDBC与ODBC(OpenData Base Connectivity,开放式数据库连接)的作用非常类似,它在应用程序和数据库之间起到了桥梁的作用。ODBC使用的特别广泛,在java中还提供了JDBC-ODBC桥,能够在JDBC与ODBC之间进行转换,这样可以通过ODBC屏蔽不同种数据库之间的差异。在JDK的包java.sql.*中定义了一系列的类、接口、异常以及这些类和接口中定义的属性和方法,java的开发人员通过一定的规则调用java.sql.*中的API就可以实现对数据库管理系统的访问。 JDBC的四种驱动 1.JDBC-ODBC Bridge JDBC-ODBC Bridge可以访问一个ODBC数据源,但在执行Java程序的机器上必须安装ODBC驱动,并作出配置,它的调用方式如下图: 因为中间有个JDBC-ODBC,所以影响了执行效率。 配置ODBC数据源的方法如下(以Mysql为例): 第一步,打开控制面板—>管理工具--->数据源(ODBC) 选择系统DSN,这一项默认应该是空的,我这里是已经配置好了一个数据源。

第二步,点击添加 第三步,选择Mysql的ODBC驱动,点击完成。 注:MySQL的ODBC驱动在系统中一般是找不到的,因为它不是系统默认自带的驱动,所以,我们要自己安装我们所需要的MySQL的ODBC驱动。安装步骤如下: ①.下载安装包,https://www.360docs.net/doc/0512140086.html,/downloads/connector/odbc/ ②.我们下载与自己系统相应的ODBC驱动 这里我们选择

MySQL数据库系统及应用综合练习

一、单项选择题(只有一个正确答案) 【1】执行语句“SELECT '2008-01-20'+ INTERVAL 2 DAY; ”结果为 A: 2008-01-22 B: 2010-01-20 C: 2008-02-11 D: 2008-03-20 答案: A 【2】下列哪个是不正确的MySQL的变量命名方式 A: _name B: n$ame C: name D: name! 答案: D 【3】字符串‘hel’lo’输出结果为 A: hel'lo B: 'hello' C: hel\'lo D: 'hel lo' 答案: A 【4】关系数据库模型是以下哪种方式组织数据结构 A: 树状 B: 文本 C: 二维表 D: 网状 答案: C 【5】使用下列哪个语句可以删除表中所有数据,但保留表结构 A: truncate table B: rename table C: delete D: drop talbe 答案: A 【6】E-R图设计属于()。 A: 概念结构设计 B: 物理结构设计 C: 逻辑结构设计 D: 需求分析设计 答案: B 【7】执行语句“GREATEST(10,9,128,1)”结果为()。 A: 9

B: 10 C: 128 D: 1 答案: C 【8】在一个关系中,若有这样一个属性存在,它的值能唯一地标识关系中的每一个元组,则称这个属性为 A: 数据项 B: 候选码 C: 主键 D: 主键值 答案: C 【9】数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作。这种功能称为()。 A: 数据控制功能 B: 数据操纵功能 C: 数据管理功能 D: 数据定义功能 答案: B 【10】1999年10月1日在mysql中表示方法错误的是: A: "1999-10-01" B: "1999%10%01" C: "1999\10\01" D: "1999/10/01" 答案: D 【11】两个表中的行按照给定的条件进行拼接而形成新表的运算为 A: 连接 B: 投影 C: 集合 D: 选择 答案: A 【12】向表中插入一个行新的纪录的命令为 A: replace into B: insert into C: replace from D: insert from 答案: B 【13】\n在MySQL中表示 A: " B: 退格符 C: 回车符

计算机二级《mysql数据库程序设计》知识点总结

MySQL知识点总结 .数据操作:检索、排序、过滤、分组、汇总、计算、联接、子查询与组合查询 .表操作:表的创建、修改、删除和重命名、表数据的插入、更新和删除 .索引(含主、外键)、视图 .难度编程:存储过程与存储函数、触发器与事件、PHP .数据库管理:事务处理、用户与权限、备份与还原、数据库维护 1.检索数据:select…from… Select [distinct] prod_id,prod_name from products [limit 4,5]; 2.检索排序:order by… Select * from products order by prod_id [asc|desc],prod_name [asc|desc]; 3.过滤数据:where 字句 = <> != > >= < <= between (1)普通where 字句 Select prod_id,prod_name from products where prod_name=’liyang’; Select prod_id,prod_name from products where prod_id between 10 and 50; Select prod_id,prod_name from products where prod_name is [not] null; (2)组合where字句:使用AND和OR连接多个条件表达式,且AND次序优于OR; (3)IN 与NOT操作符 Select prod_id,prod_name from products where prod_id [not] in(1,2,3) |prod_name in(’zhangsan’,’lisi’,’wangwu’); (4)LIKE操作符与通配符:“%”与“_” Select prod_id,prod_name from products where prod_name like ’%liu%’; Select prod_id,prod_name from products where prod_name like ’_u%’; 找出u位于名字的第二个位置的prod_id和prod_name。 (5)正则表达式 4. 计算字段 (1)拼接字段:concat(…,…) Select concat(姓氏,名字) as from orders; Select concat(vend_name,’(’,vend_country,’)’) from vendors; (2)算术运算 Select prod_name,prod_price,prod_num,prod_price*prod_num as prod_money from products; 4.使用数据处理函数:文本处理函数、日期和时间处理函数、数值处理函数。 5.汇总数据:聚集函数SUM() AVG() COUNT() MAX() MIN() Select avg(distinct prod_price) from products; Select avg(prod_price) 均价,max(prod_price) 最高价from products; 6.分组数据:group by…创建分组、过滤分组、分组排序 Select count(prod_id),prod_id from products where prod_id>1000 group by prod_id having count(prod_id)>2 order by prod_id;求出prod_id大于1000且产品数量大于2的产品数量,并按prod_id排序,注意分组语句中对象要前后一致,如下划线部分。 7.使用子查询:进行过滤select…where…in(select…where…in(select…))、作为计算字段使用 子查询。

Java连接MySql数据库,并且实现插入、删除、更新、选择操作

天之火–Qutr的专栏 君子终日乾乾,夕惕若,厉,无咎。 Home Java连接MySql数据库,并且实现插入、删除、更新、选择操作! 这是我最近写的一个连接MySql数据库的一个例子,主要实现了插入,删除,更新,选择操作,用的环境是j2sdk1.4.2_08,Eclipse3.1。以前我的同事用Python 写了同样的类,非常的好用,支持了我们公司的大部分业务,现在我们慢慢改用Java了,所以我用Java重写了一遍。一方面在今后的业务中能够用到,另一方面熟悉一下Java。 下面我把在Eclipse3.1下怎样配置数据库连接信息简单说一下。 1.启动Eclipse3.1。 2.建立一个Java project就叫DbConnect 吧,再在该Project下建立一个新类也叫 DbConnect 吧。 3.右击DbConnect.java文件点import,选择Archive file然后选择你的 mysql-connector-java-3.1.8-bin.jar文件,点Finish。你会看到有好些文件被加载进来,OK这就是连接MySql所需的驱动信息。如果到了这里你都成功的话那么恭喜你,你已经成功一半了!:) 4.接下来把我下面的代码copy到你的Java文件中,修改相关的数据库连接信息 运行一下。OK? 我说一下那个mysql-connector-java-3.1.8-bin.jar文件,其实这就是一个MySql的驱动,各数据库厂商提供了不同的适用于JDBC的驱动使得在Java中连接数据库非常简单。这里我就不多说了,以后我会写篇专门介绍数据库驱动的文章。关于MySql的驱动还有更新版本的,你需要到MySql的网站上去下载,这个网上到处都是,我就不多说了。下面看程序,有些地方我写了详细的注释应该能看懂。 这个类是非常有特色的,在每个方法的传人参数和返回值不变的情况下,希望高手能提出改进意见。多指教,谢谢! /** * 数据库连接、选择、更新、删除演示 */ //import java.sql.*; import java.sql.Connection; import java.sql.Statement; import java.sql.ResultSet; import java.sql.DriverManager; import java.util.*; public class DbConnect {

C#-连接MYSQL数据库的3种方法及示例

C# 连接MYSQL数据库的方法及示例 连接MYSQL数据库的方法及示例 方法一: using MySql.Data using MySql.Data.MySqlClient; 其他操作跟SQL是差不多,无非就是前缀变成MySql了. 补充: 下面是连接字符串,供参考. MySqlConnection con = new MySql.Data.MySqlClient.MySqlConnection("Database='testdb';Data Source='localhost';User Id='db';Password='apple';charset='utf8'"); con.Open(); MySqlCommand cmd = new MySqlCommand(); cmd.Connection = con; 使用MYSQL推出的MySQL Connector/Net is an https://www.360docs.net/doc/0512140086.html, driver for MySQL 该组件为MYSQL为https://www.360docs.net/doc/0512140086.html,访问MYSQL数据库设计的.NET访问组件。 安装完成该组件后,引用命名空间MySql.Data.MySqlClient; 使用命令行编译时:csc /r:MySql.Data.dll test.cs 方法二: 通过ODBC访问MYSQL数据库 访问前要先下载两个组件:https://www.360docs.net/doc/0512140086.html,和MYSQL的ODBC驱动(MySQL Connector/ODBC (MyODBC) driver)目前为3.51版 安装完成后,即可通过ODBC访问MYSQL数据库 方法三: 使用CoreLab推出的MYSQL访问组件,面向.NET 安装完成后,引用命名空间:CoreLab.MySql; 使用命令编译时:csc /r:CoreLab.MySql.dll test.cs 以下为访问MYSQL数据库实例 编译指令:csc /r:CoreLab.MySql.dll /r:MySql.Data.dll test.cs using System; using https://www.360docs.net/doc/0512140086.html,; using System.Text; using CoreLab.MySql; using System.Data.Odbc; using MySql.Data.MySqlClient; class ConnectMySql {

数据库基本知识(自己整理,初学者可以看一下,基于某MySql)

数据库

1常见数据库 1.1MySql : 甲骨文 1.2Oracle: 甲骨文 1.3SQL Server: 微软 1.4Sybase: 赛尔斯 1.5DB2: IBM 2MySql基础知识 2.1关系结构数据模型数据库 2.2SQL(Structured Query Language)结构化查询语言2.2.1DDL(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等 操作数据库 CREATE DATABASE [IF NOT EXISTS]mydb1 USE mydb1 DROP DATABASE [IF NOT EXISTS] mydb1

ALTER DATABASE mydb1 CHARACTER SET utf8 操作表 插入表 CREATE TABLE stu( sid CHAR(6), sname VARCHAR(20), age INT, gender VARCHAR(10) ); 更改表 ALTER TABLE t_user ADD (student varcher(20)) ALTER TABLE t_user MODIFY gender CHAR(20) ALTER TABLE t_user CHANGE gender VARCHER(20) ALTER TABLE t_user REMANE genderTO genders ALTER TABLE t_user DROP gender 删除表 DROP TABLE t_user 2.2.2DML(Data Manipulation Language):数据操作语言,用来定义数据库记录(数据) 插入数据 INSERT INTO t_user VALUES() INSERT INTO 表名 VALUES(值1,值2,…)

Java连接mysql数据库源代码

Java连接mysql数据库源代码 /** *@author mervyn *@Development_time 2011.3.12 *welcome to https://www.360docs.net/doc/0512140086.html,/mervyn_hb */ package src; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.sql.*; import java.util.*; public class MysqlConnectSystem { /** * @param args * @throws IOException */ public static void main(String[] args) throws SQLException, IOException { String Usename,KeyID,UrlString; //String DriverConnect; char MenuExitValue; String driver="com.mysql.jdbc.Driver"; Scanner EntryValue=new Scanner(System.in); System.out.println("欢迎使用MysqlConnectSystem信息管理系统!"); MysqlConnectSystem mysqlconnect=new MysqlConnectSystem(); MysqlConnectSystem mysqlinsert=new MysqlConnectSystem(); MysqlConnectSystem mysqlupdate=new MysqlConnectSystem(); MysqlConnectSystem mysqldelete=new MysqlConnectSystem(); System.out.println("请输入要登录的用户名:"); Usename=EntryValue.next(); System.out.println("请输入要登录的数据库的密码:"); KeyID=EntryValue.next(); System.out.println("请输入需要登录的数据库:"); UrlString="jdbc:mysql://127.0.0.1:3306/"+EntryValue.next(); do{ try { Class.forName(driver); Connection conn=DriverManager.getConnection(UrlString, Usename,

Mysql数据库及应用

计算机进行数据处理经历了从低级到高级的____________个发展阶段 A. 2 B. 3 C. 4 D. 5 回答正确 解析: 无 2 单选关系数据模型是以__________理论为基础的,用二维表结构来表示实体以及实体之间联系的模型。 A. 关系 B. 表 C. 元组 D. 记录 回答正确 解析: 无 3 单选关系中能唯一标识每个元组的最少属性或属性组称之为_________________。 A. 列 B. 外关键字 C. 索引 D. 关键字(主码或主键) 回答正确 解析: 无 4 单选在同一个数据库中某个关系R1中的属性或属性组若在另一个关系R2中作为关键字(主码)使用,则该属性或属性组为R1的___________。 A. 列 B. 外关键字 C. 索引 D. 关键字(主码或主键) 回答正确 解析: 无 5 单选一个数据库中往往包含多个关系,一个数据库中这些关系的集合称之为___________。 A. 关系组合 B. 关系集合 C. 数据库模式 D. 关系模式 回答正确 解析: 无 6 单选关系代数的运算分为两大类,第一类是传统的集合运算并、交、差运算,另一类是专门的关系运算,主要是选择、投影和___________。 A. 连接 B. 自然连接 C. 笛卡尔积 D. 查询 回答正确

解析: 无 7 单选数据库、数据库管理和数据库系统之间的关系正确的是 A. 数据库包括了数据库管理系统和数据库系统 B. 数据库管理系统包括了数据库和数据库系统 C. 数据库系统包括数据库和数据库管理系统 D. 以上都不对 回答正确 解析: 无 8 单选目前,商品化的数据库管理系统以__________型为主。 A. 关系 B. 层次 C. 网状 D. 对象 回答正确 解析: 无 9 单选从给定关系中找出满足一定条件的元组的运算,称为________运算。 A. 集合 B. 投影 C. 连接 D. 选择 回答正确 解析: 无 10 单选数据模型所描述的内容包括三个部分,分别是数据结构、数据操作和_______。 A. 数据定义 B. 数据约束 C. 数据连接 D. 数据选择 回答正确 解析: 无 设计关系数据库模式时,很容易出现的问题是冗余性,即一个事实在多个元组中重复。造成这种冗余的最常见的原因是,企图把一个对象的单值和多值特性包含在一个关系中。 A. 对 B. 错 回答正确 解析: 无 2 单选如果关系R属于1NF,并且R的每一个非主属性(字段)都完全依赖于主键,则R 属于_________。 A. 1NF B. 2NF C. 3NF D. 4NF 回答正确 解析: 无 3 单选假设一位教师可以讲授多门课程,一门课程可由多位教师讲授,则教师与课程之间

Java连接MySql数据库入门操作

这是连接后进行一些简单操作后的结果: Succeeded connecting to the Database! 学号姓名 2011001 张三 2011002 李四 2011003 王五 先去下载MySql并安装好。安装MySql的方法在 https://www.360docs.net/doc/0512140086.html,/view/9cc0fcc76137ee06eff918d5.html 然后下载jdbc驱动。 https://www.360docs.net/doc/0512140086.html,/downloads/connector/j/ 下载好了解压即可。把那个zip文件也放到解压后的目录中,方便管理使用。 我使用的是eclipse,我要导入包,先进行一些设置。

安装jre。 添加外部jar文件 打开刚才解压得到的jar文件。

打开的效果。 使用mysql创建数据库,进行测试。 mysql> use test; Database changed mysql> create table student ( -> sno char(7) not null, -> sname varchar(8) not null, -> sex char(2) not null -> ); Query OK, 0 rows affected

mysql> insert into student values -> (2011001, '张三', '男'); Query OK, 1 row affected mysql> insert into student values -> (2011002, '李四', '男'); Query OK, 1 row affected mysql> insert into student values -> (2011003 , '王五', '男'); Query OK, 1 row affected mysql> select * from student; +---------+-------+-----+ | sno | sname | sex | +---------+-------+-----+ | 2011001 | 张三| 男| | 2011002 | 李四| 男| | 2011003 | 王五| 男| +---------+-------+-----+ 3 rows in set mysql> 编码测试。 输入下面源代码: import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class JDBCTest { public static void main(String[] args){ try { // 加载驱动程序 Class.forName("com.mysql.jdbc.Driver"); // URL指向要访问的数据库名test String url = "jdbc:mysql://127.0.0.1:3306/test"; // MySQL配置时的用户名 String user = "root";

Crystal Reports(水晶报表) JDBC连接mysql数据库

Crystal Reports 2008(水晶报表) JDBC连接mysql数据库 在本文中,主要介绍的是Crystal Reports 2008使用JDBC连接mysql数据库。 在连接之间,首先要确认你电脑上面都安装了mysql数据库。 其次,就是jdbc连接数据时候所使用的相关jar包。 接下来,就可以进行数据库的一些连接操作了。 对JDBC不是很了解的,可以到完整java开发中JDBC连接数据库代码和步骤了解相关的操作 1.打开Crystal Reports的数据专家 2.点击JDBC(JNDI)出现:

3.输入url和数据库类名,点击下一步:

4.输入password 和user id 点击完成即可。 5.不过,在这操作之前,你需要做的是以下步骤: 在你安装的Crystal Reports目录: 我安装的目录是:D:\crystal reports 2008\Common\4.0\java 在此目录下面,有一个文件:CRConfig.xml配置文件

D:\crystal reports 2008\Common\4.0\java\CRConfig.xml 1 2../.. 310 4 5 6 7 8 9 10CFKOA-YOTTM2M-OOUFAFF-N43M 11 12 13D:\crystal reports 2008\javasdk\bin 14D:\crystal reports 2008\Common\4.0\java/lib/mysql-connector-java-5.1.10-bin.jar;D:\c rystal reports 2008\Common\4.0\java/lib/crlovmanifest.jar;D:\crystal reports 2008\Common\4.0\java/lib/C RLOVExternal.jar;D:\crystal reports 2008\Common\4.0\java/lib/CRDBJDBCServer.jar;D:\crystal reports 2

MySQL数据库教案

任务引入[5分钟] 课程介绍[20分钟] 认识数据库 提问:按自己的理解,说说数据库是什么? 展示各类网站 商城网站页面是大家在熟悉不过的了,商城网站上的商品琳琅满目, 让人流连忘返。但是在大家欣赏自己喜爱的商品之余,是否想过商城网站 上的文字信息、图片信息等存放在哪里呢?当大家在商城网站上进行注册 用户时,自己的信息又存在哪里呢?当客户在商城网站上留言的时候,留 言信息又放在哪里了呢?这就是本门课程——《WEB数据库应用》要解决 的问题。 主要让学生明确以下几个问题: 1.明确课程定位与作用 专业基础课,与《程序设计基础》一起,为《网站建设》奠定基础。 同时兼顾计算机二级考试相关内容。通过任务引领型和项目活动形式,掌 握简单的数据库设计、数据管理和维护方法,能进行web服务器的设置, 具备使用web数据库与高级程序设计语言或动态网页结合完成简单程序 开发的基本职业能力。 2.明确课程内容 内容的确定遵循两个原则:一是满足后续课程的基本需求,二是为学 生进一步的学习提供必要的准备。通过对学生就业岗位和用人单位对本专 业毕业生设置的招聘岗位等分析,课程内容应基本包括数据库系统概述、 关系理论、关系数据库查询语言SQL、数据库设计与关系规范化理论、MySQL 数据中管理系统与高级程序设计语言或动态网页技术结合的简单应用。 3.强调学习方法 (1)与以往《计算机基础》、《办公软件应用》在学习方法上不同, 知识与操作的连续性更强,在学习上要坚持一贯,持之以恒。 提问 展示 展示课程 标准、课程 体系图 与教材配 合

新知识[45分钟] (2)课程难度加大,要求大家认真听、认真做,尤其要认真思考。逐渐养成举一反三的习惯、锻炼独立进行逻辑思维的能力。 (3)要学会自学。 (4)要善于和老师沟通。 (5)要学会团队协作。 4.明确考核方式 (1)日常评价 由三个部分组成:出勒(20%)、学习积极主动性(40%)、任务完成情况(40%) (2)终结评价 平时:20% 期中:20% 期末:40% 一、数据库基本概念 请学生回忆从小学——初中——高中——大学,每个期末处理成绩的过程,大部分都有帮助老师统计分数的经历。提问: 1.你用过哪些方式协助老师统计分数? 2.在这个过程中你发现了什么变化?为什么产生这样的变化? 经过充分的讨论发言之后,让学生总结为什么产生数据库技术,并简单说明其发展阶段: 第一代:网状、层次数据库系统 第二代:关系型数据库系统 第三代:以面向对象模型为主要特征的数据库系统 二、数据库基本概念 1.数据 数据是存储在数据库中的基本对象,包括数字、文字、图形、图像和声音等。 2.数据库 数据库简单地说就是存放数据的仓库。这些数据是按照一定的格式存放在计算的存储设备上。

Java使用JDBC连接MYSQL数据库增删改查示例

Java使用JDBC连接MYSQL数据库增删改查示例JDBC连接MYSQL数据库: import java.sql.Connection; import java.sql.DriverManager; public class Mysql { public static void main(String arg[]) { try { Connection con = null; //定义一个MYSQL链接对象 Class.forName("com.mysql.jdbc.Driver").newInstance(); //MYSQL 驱动 con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test", "root", "root"); //链接本地MYSQL System.out.print("yes"); } catch (Exception e) { System.out.print("MYSQL ERROR:" + e.getMessage()); } }

} Class.forName("com.mysql.jdbc.Driver").newInstance(); 我们链接的是MYSQL 数据库,所以需要一个MYSQL的数据库驱动,如果你的环境中没有安装,可以下载:mysql-connector-java-5.1.17-bin.jar JAR包,然后放进jdk1.6.0_37\jre\lib\ext 重启eclispe 就可以在JRE系统库中看到。 con = DriverManager.getConnection;("jdbc:mysql://127.0.0.1:3306/test", "root", "root"); 是链接数据库的语句,返回Connection con;对象。参数格式:("jdbc:mysql://ip:端口/数据库名称", 用户名,密码) 写入一条数据 import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class Mysql { /**

vs2010连接mysql数据库方法

Vs2010连接Mysql数据库方法 下载MySQL 5.5.13 正式版:https://www.360docs.net/doc/0512140086.html,/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 Line Client.exe”,如果有密码就输入密码,没有设置密码就直接按回车,会提示服务器启动成功。

MySQL数据库原理及应用(第2版)(微课版)-习题答案

习题答案 项目1 习题答案 1 2.填空题 (1)物理数据独立性 (2)数据库管理系统((DBMS) (3)现实世界、信息世界、数据世界 (4)码 (5)一对一(1:1)、一对多(1:n)、多对多(m:n) (6)概念数据模型 E-R模型 (7)逻辑数据物理数据 (8)DBMS(数据库管理系统) DBA(数据库管理员) (9)关系的参照 (10)θ 3.简答题 (1)数据模型是对现实世界的数据特征进行的抽象,来描述数据库的结构与语义。 数据模型的三要素是:数据结构、数据操作、数据约束条件。 (2)逻辑数据独立性:当模式改变时(如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式映像作相应改变,可以使外模式保持不变。因而应用程序不必修改,保证了数据与程序的逻辑独立性,简称逻辑数据独立性。 物理数据独立性:当数据库的存储结构改变了(如选用了另一种存储结构),由数据库管理员对模式/内模式映像作相应改变,可以保证模式保持不变,因而应用程序也不必改变。保证了数据与程序的物理独立性,简称物理数据独立性 特定的应用程序是在外模式描述的数据结构上编制的,它依赖于特定的外模式,与数据库的模式和存储结构相独立。不同的应用程序可以共用同一外模式。数据库的两级映像保证了数据库外模式的稳定性,从而从底层保证了应用程序的稳定性,使得数据库系统具有数据与程序的独立性。 (3)数据库系统由计算机硬件、数据库、数据库管理系统(及其开发工具)、数据库应用系统、数据库用户构成。 (4)DBA的职责是对使用中的数据库进行整体维护和改进,负责数据库系统的正常运行,是数据库系统的专职管理和维护人员。 系统分析员负责应用系统的需求分析和规范说明,要和用户及DBA结合,确定系统的硬件软件配置,并参与数据库系统的概要设计。 数据库设计人员负责数据库中数据的确定、数据库各级模式的设计。 应用程序开发人员负责设计和编写应用程序的程序模块,并进行测试和安装。 (6)目前比较流行的DBMS有Visual FoxPro、Access、SQL Server、MySQL、PostgreSQL 、Oracle、teradata等。

MySQL重点知识归纳整理

数据库管理系统:按照一定的数据模型科学的组织和存储数据,提供数据的高效获取与维护。 定义语言DDL操纵语言DML数据库的运行与管理,数据库的建立和维护功能,提供方便,有效存取数据库信息的接口和工具。数据库管理员DBA 数据库系统:数据库,数据库管理系统,应用开发工具,应用系统,数据库管理员和用户构成。 模式(逻辑模式或概念模式):全体数据的逻辑结构和特征的描述。 外模式(子模式或用户模式)是模式的子集。 内模式(存储模式DDL)对数据库物理结构和存储方式的描述。 数据库的概念结构(逻辑结构和特征的描述)独立于内外模式。 内外模式依赖概念模式,独立于存储设备。 数据库设计的6阶段,需求分析,概念结构设计,逻辑结构设计,物理结构设计,数据库实施,数据库运行与维护。 概念(信息结构)通过数据模型(逻辑)Create database db_test; use db_test; Create table content(content_id int primary key,subject varchar(200),words varchar(1000),username varchar(50),face varchar(50),email varchar(50),createtime datetime); Insert into content(content_id,subject,words,username,face,email,createtime) values(null,’mysql问题请教’,’mysql中对数据表的操作有哪些?’,’mysql初学者’,’face.jpg’,’tom@https://www.360docs.net/doc/0512140086.html,’,now()); Update content set words=‘如何使用insert语句?’where uername=’mysql 初学者’; 修改数据库 Alter database db_test Default character set gb2312字符集 Default collate gb2312;校对规则 查看 Show databases; 更新表 Alter table db_test add column userdz char(10) not null default ‘wuhan’ after face; 修改列名和数据类型 Alter table db_test change column sex新face 旧char(1) null default ‘m’;

Java连接MySQL数据库

Java与Myql数据库的连接问题 在我痛苦的try了N多次之后我终于明白,一个.java文件如何与mysql数据库连同并且可以在小黑屏里显示数据库里面的内容,数据库的驱动文件的安装实在是件头疼的事,实际上是不需要安转的,按如下步骤即可轻松解决。 1.在网上下载一个数据库驱动程序,例如我下载的是(0002mysqlconnectorjava517(1).rar)大小是7.71MB,解压之,到 0002mysqlconnectorjava517(1)或者到当前文件,在mysql-connector-java-5.1.7文件里有个mysql-connector-java-5.1.7-bin.jar文件,可以将此文件解压也可以不解压, 下面有a、b两种方法(结果是一样),首先我的文件是这样放的: a.我的那个没解压的.jar文件在D:\mysql-connector-java-5.1.7这个文件夹里面(就是那个694kb的压缩包) b.我把这个.jar文件解压后放在的D:\mysql-connector-java-5.1.7这个文件夹里面(就是那个mysql-connector-…)文件夹 2.配置环境变量(这是最要命的)我的电脑-->属性-->高级-->环境变量(N)-->系统变量-->新建classpath

如果是上面的a情况那么是这样配的 变量值是:D:\mysql-connector-java-5.1.7\mysql-connector-java-5.1.7-bin.jar; 请切记变量值后面一定要有一个分号----【;】切记要有这个不然就出现如下异常错误并且在每次设置环境变量之后DOS框是要重新启动的不然没有生效的是。 D:\Java>javac database.java D:\Java>java database Exception in thread "main" https://www.360docs.net/doc/0512140086.html,ng.NoClassDefFoundError: database Caused by: https://www.360docs.net/doc/0512140086.html,ng.ClassNotFoundException: database at https://www.360docs.net/doc/0512140086.html,.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at https://www.360docs.net/doc/0512140086.html,.URLClassLoader.findClass(URLClassLoader.java:188) at https://www.360docs.net/doc/0512140086.html,ng.ClassLoader.loadClass(ClassLoader.java:307) at https://www.360docs.net/doc/0512140086.html,uncher$AppClassLoader.loadClass(Launcher.java:301) at https://www.360docs.net/doc/0512140086.html,ng.ClassLoader.loadClass(ClassLoader.java:252) at https://www.360docs.net/doc/0512140086.html,ng.ClassLoader.loadClassInternal(ClassLoader.java:320) Could not find the main class: database. Program will exit. D:\Java>

相关文档
最新文档