
实例:
代码如下:
<?php
$conn1
=
mysql_connect("127.0.0.1",
"root","root","db1")
mysql_select_db("db1",
$conn1)
$conn2
=
mysql_connect("127.0.0.1",
"root","root","db2")
mysql_select_db("db2",
$conn2)
$sql
=
"select
*
from
ip"
$query
=
mysql_query($sql)
if($row
=
mysql_fetch_array($query))
echo
$row[0]."n"
$sql
=
"select
*
from
web
"
$query
=
mysql_query($sql)
if($row
=
mysql_fetch_array($query))
echo
$row[0]
?>
这段代码存在问题,在程序执行时会报错:PHP
Warning:
mysql_fetch_array()
expects
parameter
1
to
be
resource,
boolean
given
in
....
原因分析:
程序开始建立两个数据库链接,函数mysql_query()原型:
resource
mysql_query
(
string
$query
[,
resource
$link_identifier
]
)
向与指定的连接标识符关联的服务器中的当前活动数据库发送一条查询。如果没有指定
link_identifier,则使用上一个打开的连接。如果没有打开的连接,本函数会尝试无参数调用
mysql_connect()
函数来建立一个连接并使用之。查询结果会被缓存。
在本例中由于没有指定link_identifier,所以,在执行第一条sql时,默认使用的是上一个打开的链接,即$conn2,而实际上第一条sql语句应该使用的是$conn1,所以导致报错,所以为了能够链接多个mysql数据库,可以使用如下方法:
方法1:在mysql_query函数中指定所用连接,即:
代码如下:
<?php
$conn1
=
mysql_connect("127.0.0.1",
"root","root","db1")
mysql_select_db("Muma",
$conn1)
$conn2
=
mysql_connect("127.0.0.1",
"root","root","db2")
mysql_select_db("product",
$conn2)
$sql
=
"select
*
from
ip"
$query
=
mysql_query($sql,$conn1)
//添加连接$conn1
if($row
=
mysql_fetch_array($query))
echo
$row[0]."n"
$sql
=
"select
*
from
web
"
$query
=
mysql_query($sql,
$conn2)
if($row
=
mysql_fetch_array($query))
echo
$row[0]
?>
方法2:在sql语句中关联所用数据库,此时可以省略mysql_query的第二个参数,即:
代码如下:
<?php
$conn1
=
mysql_connect("127.0.0.1",
"root","root","db1")
mysql_select_db("db1",
$conn1)
$conn2
=
mysql_connect("127.0.0.1",
"root","root","db2")
mysql_select_db("db2",
$conn2)
$sql
=
"select
*
from
db1.ip"
//关联数据库
$query
=
mysql_query($sql)
if($row
=
mysql_fetch_array($query))
echo
$row[0]."n"
$sql
=
"select
*
from
db2.web
"
$query
=
mysql_query($sql)
if($row
=
mysql_fetch_array($query))
echo
$row[0]
?>
java中怎样创建MySQL数据库列表需要使用jdbc访问数据库。
具体步骤如下:
1:加载驱动
,返回连接
private
static
final
String
DRIVER_CLASS
=
"com.mysql.jdbc.Driver"
private
static
final
String
DATABASE_URL
=
"jdbc:mysql://localhost:3306/student"
private
static
final
String
DATABASE_USRE
=
"root"
private
static
final
String
DATABASE_PASSWORD
=
"cs"
/**
*
返回连接
*
*
@return
Connection
*/
public
static
Connection
getConnection()
{
Connection
dbConnection
=
null
try
{
Class.forName(DRIVER_CLASS)
dbConnection
=
DriverManager.getConnection(DATABASE_URL,
DATABASE_USRE,
DATABASE_PASSWORD)
}
catch
(Exception
e)
{
e.printStackTrace()
}
return
dbConnection
}
2:获取连接,执行sql语句
public
static
List
selectAllStudent()
{
Connection
con
=
null
PreparedStatement
pstm
=
null
ResultSet
rs
=
null
List
list
=
new
ArrayList()
String
sql
=
"select
*
from
Student
"
try
{
con
=
ConnectionManager.getConnection()
pstm
=
con.prepareStatement(sql)
//
pstm.setString(1,
uname)
rs
=
pstm.executeQuery()
while
(rs.next())
{
Student
model
=
new
Student()
model.setStuId(rs.getInt("stuId"))
list.add(model)
}
}
catch
(SQLException
e)
{
e.printStackTrace()
}
finally
{
ConnectionManager.closeResultSet(rs)
ConnectionManager.closeStatement(pstm)
ConnectionManager.closeConnection(con)
}
return
list
}
3:调用获取列表方法。
本文实例讲述了nodejs简单访问及 *** 作mysql数据库的方法。分享给大家供大家参考,具体如下:var
mysql
=
require('mysql')
//调用MySQL模块
mysql模块要安装
$
npm
install
mysql
//创建一个connection
var
connection
=
mysql.createConnection({
host
:
'127.0.0.1',
//主机
user
:
'root',
//MySQL认证用户名
password
:
'',
//MySQL认证用户密码
port:
'3306',
//端口号
database:''
//数据库名
})
//创建一个connection
connection.connect(function(err){
if(err){
console.log('[query]
-
:'+err)
return
}
console.log('[connection
connect]
succeed!')
})
//执行SQL语句
connection.query('SELECT
1
+
1
AS
solution',
function(err,
rows,
fields)
{
if
(err)
{
console.log('[query]
-
:'+err)
return
}
console.log('The
solution
is:
',
rows[0].solution)
})
//关闭connection
connection.end(function(err){
if(err){
return
}
console.log('[connection
end]
succeed!')
})
注:nodejs在 *** 作数据库的时候不用设置数据库的编码格式
set
names
utf8
希望本文所述对大家nodejs程序设计有所帮助。
您可能感兴趣的文章:nodejs连接mysql数据库简单封装示例-mysql模块nodejs进阶(6)—连接MySQL数据库示例nodejs实现的连接MySQL数据库功能示例Nodejs连接mysql并实现增、删、改、查 *** 作的方法详解nodeJs实现基于连接池连接mysql的方法示例nodejs中 *** 作mysql数据库示例NodeJS链接MySql数据库的 *** 作方法Nodejs使用mysql模块之获得更新和删除影响的行数的方法NodeJs使用Mysql模块实现事务处理实例nodejs连接mysql数据库及基本知识点详解
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)